alloca |
Alloué avec libération automatique |
---|---|
Microsoft C | malloc.h |
Syntaxe
char *alloca(unsigned size); |
Paramètres
Nom | Description |
---|---|
size | Ce paramètre permet d'indiquer le quantité de mémoire en octets |
Description
Cette fonction permet d'effectuer de l'allocation de mémoire en octets directement sur la pile du programme en cours.
Remarques
- La routine alloca alloue des octets de taille spécifié à partir de la pile du programme. L'espace alloué est automatiquement libéré lorsque la fonction ayant appelé alloca est quittée.
- Valeur de retour : La routine alloca renvoie un pointeur char sur l'espace alloué. L'espace d'entreposage indiqué par la valeur de retour est garanti d'être correctement aligné pour l'entreposage de tout type d'objet. Pour obtenir un pointeur sur un type autre que char, utilisez un type castré sur la valeur de retour. La valeur de retour est NULL si l'espace ne peut pas être alloué.
- La valeur du pointeur renvoyée par alloca ne doit jamais être passée comme paramètre à la fonction free. De plus, comme la fonction alloca manipule la pile, elle ne doit être utilisée que dans des instructions d'affectation simples et jamais dans une expression étant un paramètre d'une fonction.
Voir également
Langage de programmation - Microsoft C - Référence des fonctions - calloc
Langage de programmation - Microsoft C - Référence des fonctions - malloc
Langage de programmation - Microsoft C - Référence des fonctions - realloc
Dernière mise à jour : Vendredi, le 8 Mai 2020