Est-ce que tu as réfléchi à ce que tu as écris ?
Un pointeur c'est une adresse mémoire ( je conseillerais d'avoir des rudiments d'assembleur cela permet de mieux piger )
Quand tu compiles ton programme en exe ou a.out le compilateur dans le fichier exécutable réserve un emplacement ( dans la pile de variables ) pour mémoriser l'adresse mémoire pointée par le pointeur , en général sur 32bits donc 8 octets
Si tu assignes ce pointeur par malloc en C ou new en C++ à l'exécution , l'OS via la C-runtime va affecter à cette variable pointeur une adresse mémoire ( allocation dans le tas ou "heap" en anglais)
Autrement dit à part valoir 0 ou NULL ce pointeur ne peut pas être affecté à une valeur fixe à la compilation puisque l'affectation se fait à l'exécution par le système.
Partager