« Introduction au langage C/Allocation dynamique de mémoire » : différence entre les versions

Contenu supprimé Contenu ajouté
Thierry46 (discussion | contributions)
Thierry46 (discussion | contributions)
→‎Taille des variables : Typo + liens Wikilivre Exercices
Ligne 12 :
== Taille des variables ==
 
Toutes les types de variables occupent une certaines place en mémoire, qui s'exprime en octets. Selon que vous créez une variable de type <code>short</code> ou de type <code>int</code>, vous avez ainsi besoin de plus ou moins de mémoire. De plus, selon le système considéré, un même type peut occuper une place différente.
 
Pour connaitreconnaître la place que prend en mémoire un certain système, il suffit d'utiliser l'opérateur <code>'''sizeof'''</code>.
 
Par exemple pour connaitreconnaître la taille d'un <code>int</code> sur le système il vous suffit de faire:
<source lang="C">sizeof(int);</source>
 
{{Attention|Avec_fond=oui|Attention : <code>sizeof()</code> n'est pas une fonction, c'est un ''opérateur''. C'est pour cela que cette instruction sera remplacée à la compilation par la taille du type <code>int</code> par le compilateur. Si vous compilez sur un système, c'est la valeur pour ''ce système'' qui sera enregistrée, quelle que soit la machine sur laquelle vous exécuterez le programme.}}
 
{{loupe|amorce=Pour plus d'informations, voir le WikiLivre d'exercices C|b:Exercices en langage C/Types{{!}}sur l'affichage de la taille des types de base}}
Si vous voulez afficher la taille que prend en mémoire les types de bases, il vous suffit de faire :
<source lang="C">printf("char : %ld octetsn", sizeof(char));
printf("int : %ld octetsn", sizeof(int));
printf("long : %ld octetsn", sizeof(long));
printf("double : %ld octetsn", sizeof(double));</source>
 
== Allocation dynamique ==