En effet, une chaîne littérale (ou tableau de caractères se terminant par \\ 0) renvoie un pointeur sur le premier caractère de son texte et non le jeu de caractères. Donc, si vous voulez en quelque sorte des chaînes comme éléments d'un tableau, vous devez avoir les pointeurs vers les premiers caractères des chaînes comme les éléments du tableau. Vous auriez alors un tableau dont le type serait pointeur de caractères. Quelque chose comme, char * arr []; Le nom du tableau (identifiant) doit être précédé par *.
Nous avons eu une déclaration similaire dans la partie précédente de la série, mais au lieu de char, nous avions flotter. L'échantillon de code suivant vous montre comment utiliser les chaînes que les éléments du tableau. Lire et essayer. #include int main () {char * un = "la première"; char * deux = "le second"; char * = trois ", le troisième"; char * myStrings [] = {un, deux, trois}; //le bloc comporte des pointeurs printf (myStrings [0]); printf ("\\ n"); printf (myStrings [1]); printf ("\\ n"); printf (myStrings [2]); printf ("\\ n"); return 0; } # Include int main () {char * myStrings [3]; myStrings [0] = "la première"; myStrings [1] = "le second"; myStrings [2] = "le troisième"; printf (myStrings [0]); printf ("\\ n"); printf (myStrings [1]); printf ("\\ n"); printf (myStrings [2]); printf ("\\ n"); return 0; } Lorsque vous voulez un tableau de chaînes, le tableau doit être déclarée comme le type du pointeur de char.
Ce tableau devra finalement pointeurs de caractères comme des éléments (valeurs). Pour assigner une chaîne à un élément, juste assigner le pointeur de caractère de la chaîne à la matrice de l'élément dans la manière ordinaire, comme dans, myStrings [2] = "le troisième"; Dans la ligne ci-dessus, les guillemets renvoie un pointeur, donc un pointeur est affecté comme l'élément (valeur) pour l'index du tableau. Depuis le tableau a été déclaré d'avoir des pointeurs, en tapant le nom du tableau et un index entre parenthèses, reviendrait un pointeur.
Maintenant, le contexte