Adresse d'un tableau de charactères
Bonjour,
J'ai fait un prgramme test et j'obtiens un résultat bizzare 8O. Je pensais avoir tout bien compris sur les pointeurs ... mais je crois que j'ai encore des ombres xD
Code:
1 2 3 4 5
|
int main(){
char c1[4]="abc";
printf("l'adresse &c1 = %p soit %u et c1 = %p soit %u et *c1 = %p soit %u soit %c\n",&c1,&c1,c1,c1,*c1,*c1,*c1);
} |
et j'obtiens le résultat suivant
Citation:
l'adresse &c1 =0xbfe3fc54 soit 3219389524 et c1 = 0xbfe3fc54 soit 3219389524 et *c1 = 0x61 soit 97 soit a
Je ne comprend vraiment pas pourquoi j'ai &c1=c1 ... je pensais qu'en délarant c1[4]="abc" je créais un pointeur sur character c1 dans la pile et qu'il lui était attribué l'adresse d'un espace de 4 caractères dans le tas. Donc pour moi je devrais avoir &c1 different de c1.
J'y comprend plus rien xD
j'en perd mon latin ... euh bon ok je parle pas latin xD