Chaînes de caractères et pointeurs
Bonjour,
J'ai une question à propos de l'utilisation des chaînes de caractères en C (je débute et je ne maîtrise pas encore tout aàfait les pointeurs)
J'ai été voir dans la faq C mais ça n'a pas vraiment répondut à ma question
Si je fais ça :
Code:
1 2 3
|
char * ptr = "Bonjour tout le monde";
printf(ptr); |
Ca fonctionne très bien mais je ne parviens pas à comprendre pourquoi.
Pour moi :
déclare un pointeur ptr vers un élément de type machin mais il faut initialiser ce dernier avec l'ADRESSE d'une variable machin
Par exemple pour un entier :
Code:
1 2 3 4
|
int i;
int *ptr = &i
*ptr = 587; |
mais certainement pas :
Code:
1 2 3
|
int *ptr = 54;
ptr = 10 |
Dois-je en conclure que l'utilisation des pointeurs n'est pas la même avec les chaines de caractères ?
merci bien