Le code suivant illustre cela: #include int main () {char myStr [] = {'t', 'h', 'e', '', 'm', 'a', 'n'}; printf ("% c", myStr [0]); printf ("% c", myStr [1]); printf ("% c", myStr [2]); printf ("% c", myStr [3]); printf ("% c", myStr [4] ); printf ("% c", myStr [5]); printf ("% c", myStr [6]); return 0; } La sortie doit afficher "l'homme" dans une ligne. Ce ne sont pas un moyen pratique de manipulation de chaînes. Nous avons traité une phrase (string) caractère par caractère.
Ce n'est pas bien; nous devrions avoir un moyen de manipulation ou se référant à une phrase (chaîne) en utilisant un identifiant et pas beaucoup identifiants (les éléments du tableau) comme dans le cas ci-dessus. Pour atteindre cet objectif, les inventeurs de C a décidé que, à la fin du tableau vous ajoutez le caractère nul, \\ 0, puis C devrait considérer l'ensemble des caractères dans le tableau comme une chaîne et un identifiant peut être utilisé pour identifier (reportez-vous ou gérer) la chaîne. Le caractère nul commence par une barre oblique inverse, suivie par zéro, qui est \\ 0.
L'identifiant que les identificateurs le tableau résultant est l'identificateur de la chaîne. Lire et essayer le code suivant qui illustre cela: #include int main () {char myStr [] = {'t', 'h', 'e', '', 'm', 'a', 'n', '\\ 0'}; printf (myStr); return 0; } Notez que l'identifiant, myStr dans la fonction printf est pas entre guillemets. Dans le code, le dernier élément dans le tableau est le caractère nul. Il est entre des guillemets simples comme le reste des caractères.
Maintenant, le nom du tableau qui a été censé être l'identifiant d'un pointeur constant pour le premier élément (objet) du tableau et devrait renvoyer l'adresse du premier élément (objet) de la matrice, retourne désormais la chaîne (personnages du tableau ), lorsqu'il est placé dans un contexte particulier, car le tableau est faite de caractères et se termine par '\\ 0'. Tous les personnages du tableau sont retournés à l'exception du caractère nul. Normalement, un pointeur ne doit pas renvoyer de valeur de l'objet pointu ou d'objets pointus.
Dans le code ci-dessus, la fonction printf (contexte) a été conçue de telle manière que, si elle r