Bonjour j'ai exécuté un programme pour obtenir les adresses des variables et des pointeurs. Mais pour &pt3 l'adresse est 0xbf964134 alors que logiquemet ça devrait être 0xbf96413c. En effet cette variable est déclarée en dernier, donc la variable pt3 devrait avoir comme adresse : adresse stockée par pt3 + 4 car un pointeur fait 4 octets non ?
pt1=0xbf964124
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #include <stdio.h> int main() { int nb1=25; int nb2=184; int *pt1=&nb1; int *pt2=&nb2; double nb3=3.567; double *pt3=&nb3; printf("\npt1=%p \npt2=%p \npt3=%p \n&nb1=%p \n&nb2=%p \n&pt1=%p \n&pt2=%p \n&nb3=%p \n&pt3=%p",pt1,pt2,pt3,&nb1,&nb2,&pt1,&pt2,&nb3,&pt3); return 0; }
pt2=0xbf964128
pt3=0xbf964138
&nb1=0xbf964124
&nb2=0xbf964128
&pt1=0xbf96412c
&pt2=0xbf964130
&nb3=0xbf964138
&pt3=0xbf964134
Merci !!
Partager