Pointeurs et Allocation Dynamique 1 Pointeurs et Allocation Dynamique Yacine BELLIK IUT d’Orsay Université Paris XI Algorithmique/Langage 1ère année Yacine.Bellik@iut-orsay.fr22 Plan du cours Pointeurs
Un tableau de pointeurs, est un outil pour ranger un ensemble de pointeurs sur différentes variables. Il peut également servir pour déclarer un tableau à deux dimensions, en allouant plusieurs espaces et stockant leurs pointeurs dans notre tableau. Exemple d'utilisation pour déclarer un tableau à deux dimensions :
Il faut noter qu'elle est déconseillée pour allouer des espaces de type float ou double . Pour allouer dynamiquement un tableau, on procèderait ainsi : Ainsi la fonction calloc nous alloue un nombre d'éléments égal à 'nombreElements' du type pointé par 'pointeur'. Cet espace sera initialisé automatiquement par des zéros (0).
Dans le cas d’un tableau ou pointeur de caractères, l’affichage produit la chaîne de caractères commençant à la première case du tableau ou à la case d’adresse indiquée par le pointeur et finissant à la première case qui contient le caractère 0 (code ASCII=0).
Voici le prototype de la fonction malloc: La fonction prend en paramètre le nombre d'octets à réserver. Il suffit donc d'écrire sizeof(int) dans ce paramètre pour réserver suffisamment d'espace pour stocker un int. Mais regardez ce que la fonction renvoie : un void* Dans le chapitre sur les fonctions, je vous avais dit que voidsignifiait "vide", e
La fonction malloc a donc renvoyé dans notre pointeur memoireAlloueel'adresse qui a été réservée pour vous en mémoire. Deux possibilités : 1. Si l'allocation a marché, notre pointeur contient une adresse. 2. Si l'allocation a échoué, notre pointeur contient l'adresseNULL. Il est peu probable qu'une allocation échoue, mais ça peut arriver : si vous
La fonction free a juste besoin de l'adresse mémoire à libérer. On va donc lui envoyer notre pointeur : memoireAllons notre exemple : See full list on openclassrooms.com
On va programmer quelque chose qu'on a appris à faire il y a longtemps : demander l'âge de l'utilisateur et le lui afficher. La seule différence avec ce qu'on faisait avant, c'est qu'ici la variable va être allouée manuellement : Bref : on y a alloué dynamiquement une variable de type int . Ce qu'on a écrit revient finalement au même que d'utiliser