Syntaxe :
#include <cstdlib> void *malloc( size_t size );
La fonction malloc() renvoie un pointeur vers un espace mémoire de taille size, ou bien NULL s'il y eu une erreur. La zone mémoire allouée est située sur le tas et non la pile ; prenez garde à libérer la mémoire allouée lorsque vous n'en avez plus besoin. Par exemple :
typedef struct type_de_donnee{ int age; char nom[20]; } donnee; donnee *alex; alex = (donnee*) malloc( sizeof(donnee) ); if( alex != NULL ) { alex->age = 22; strcpy( alex->nom, "Alexandre" ); printf( "%s a %d ans\n", alex->nom, alex->age ); } free( alex );
REMARQUE : L'usage des opérateurs new/delete est à préférer en C++ (de même que malloc/free en C).