Donc, les Inventeurs du C a décidé de 1) remplacer le bloc de tableau de caractères qui se termine par le caractère nul avec une chaîne entre guillemets. 2) La chaîne saisie entre guillemets renvoie un pointeur (adresse de mémoire) pour le premier élément du tableau remplacé. 3) Ce pointeur est le pointeur de chaîne et un (par exemple fonction printf de contexte) peut utiliser pour retourner une chaîne. 4) Le pointeur renvoyé des guillemets, peut être utilisé dans l'initialisation d'un pointeur char pour créer une chaîne.
Le code suivant illustre ces: #include int main () {char * herStr = "la femme"; printf (herStr); return 0; } Lire et essayez le code ci-dessus si vous ne l'avez pas déjà fait. Notez que dans l'initialisation des pointeurs d'autres types d'objets, l'opérande de droite renvoie l'adresse (par exemple & myInt) d'un objet. Une chose semblable est arrivé ici. Une adresse est un pointeur.
Vous pouvez diviser l'initialisation en déclaration et affectation comme dans le code suivant: #include int main () {char * herStr; herStr = "la femme"; printf (herStr); return 0; } A ce stade, vous demandez peut-être comment utiliser la fonction printf () et ses arguments (articles entre parenthèses); ne vous inquiétez pas, nous allons étudier la fonction printf tard dans la série. Chaîne littérale Une chaîne entre guillemets est appelé une chaîne littérale. Incrémenter et décrémenter pointeur de chaîne à proprement parler, il n'y a pas pointeur de chaîne.
Toutefois, si vous initialisez (ou déclarez et affectez) une chaîne comme dans les situations ci-dessus, alors vous pouvez dire que vous avez un pointeur de chaîne. Vous pouvez augmenter ou diminuer le pointeur (adresse dans l'objet de pointeur) pour pointer vers le caractère suivant ou précédent (objet) dans la chaîne, depuis la chaîne est stockée comme un tableau (se terminant par \\ 0) dans la mémoire. Lire et essayez le code suivant, qui illustre cela: #include int main () {char * herStr = "la femme"; printf ("% c", * herStr