Différences entre les versions de « Introduction au langage C/Allocation dynamique de mémoire »

→‎Allocation dynamique : Correction void -> int, perrr en cas d'erreur.
(→‎Allocation dynamique : Correction void -> int, perrr en cas d'erreur.)
<source lang="C">void * malloc (size_t size);</source>
 
Le type <code>void</code> est un passe-partout, il permet de remplacer n'importe quel autre type (attention toutefois à ne pas en abuser).
Ainsi pour allouer dynamiquement un <code>int</code> il suffit de faire :
<source lang="C">void *p = malloc(sizeof(int));</source>
 
Ainsi pour allouer dynamiquement un <code>int</code> il suffit de faire :
Le type <code>void</code> est un passe-partout, il permet de remplacer n'importe quel autre type (attention toutefois à ne pas en abuser).
<source lang="C">voidint *p = malloc(sizeof(int));</source>
 
=== Vérifier que l'allocation a été un succès ===
 
Pour vérifier que l'allocation a été un succès, il suffit de tester le pointeur.
Si celui ci vaut <code>NULL</code> alors l'allocation a échoueréchoué sinon l'allocation a réussi.
 
<source lang="C">void *p = malloc(sizeof(int));
int *p = malloc(sizeof(int));
if(p == NULL)
{
printfperror("ÉchecEchec deallocation l'opérationmemoire");
exit(1);
}
}</source>
 
== Libération de la mémoire ==
330

modifications