Vous ne pouvez pas avoir des chaînes littérales que les éléments du tableau. 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. Les exemples de code suivants montrent comment utiliser des chaînes comme éléments de tableau. Lire et essayer de les (ignorer les messages d'erreur pour l'instant). #include using namespace std; 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 cout cout cout return 0; } Le deuxième exemple de code suivant: #include using namespace std; int main () {char * myStrings [3]; myStrings [0] = "la première"; myStrings [1] = "le second"; myStrings [2] = "le troisième"; cout cout cout 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, r