Bonjour à tous !
Suite à quelques tests concernant les structures, je sollicite votre aide afin d'y voir plus clair.
Par exemple:
Résultat:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 typedef struct{ int var1; int var2; int var3; } structure; structure test = {5,10,15}; //Leurs adresses puts("Adresses"); printf("\t%x\n",&test); printf("\t%x\n\n",&test.var1); //Leurs valeurs puts("Valeurs"); printf("\t%x\n",test); printf("\t%x\n",test.var1);
Adresses
ffbffa98
ffbffa98
Valeurs
ffbffa88
5
Comment peuvent-elles avoir des valeurs différentes alors qu'elles ont la même adresse ?
Est-ce parce que pour calculer la valeur de test le compilateur lit sur toute la taille de la structure ? Soit 3*(int) ?
Merci de m'avoir lu !![]()
Partager