Je suis en train d'enseigner c depuis un livre et j'essaie de créer un puzzle croisé. Je dois faire une gamme de cordes mais continue à rencontrer des problèmes. En outre, je ne sais pas grand chose à propos de l'array ...
C'est la pièce du code: p> mais je continue à recevoir le message: p> Vous ne savez pas quel est le problème ... J'ai essayé de regarder comment faire un tableau de cordes mais sans chance p> toute aide sera très appréciée , p> sam p> p>
4 Réponses :
array[0] = word1; array[1] = word2; array[2] = word3;
La déclaration crée un tableau de trois caractères em>. Vous semblez vouloir déclarer une gamme de personnages points em>: p> Vous avez un problème plus grave cependant. La déclaration p> crée un tableau de six caractères, mais vous le direz en fait d'avoir sept em> caractère. Toutes les chaînes ont un caractère supplémentaire, déclarent que la matrice soit de taille sept: p >
'\ 0' code>, qui est utilisé pour indiquer la fin de la chaîne. P> char word1 [] ="fluffy";
Si vous avez besoin d'un tableau de chaînes. Il y a deux manières:
Dans ce cas, vous devrez connaître la taille de vos chaînes à l'avance. On dirait ci-dessous: p> On dirait ci-dessous: p> // In this case you have an array of 10 character pointers
// and you will have to allocate memory dynamically for each string.
char *arr[10];
// This allocates a memory for 50 characters.
// You'll need to allocate memory for each element of the array.
arr[1] = malloc(50 *sizeof(char));
Vous pouvez également utiliser Si vous ne le savez pas à l'avance (au moment de la codage) Combien de cordes Soyez dans un tableau et à quel point ils seront longueux, c'est un moyen d'aller. Mais vous devrez libérer la mémoire quand elle n'est plus utilisée (appelez masloc () code> pour allouer la mémoire manuellement: gratuit () code>). P> p>
Essayez d'étudier un peu plus sur les tableaux pw1.netcom.com/~tjensen/ptr/ pointres.htm .
Au fait -
Char Word1 [6] = "moelleux" code> - "moelleux" est en réalité de 7 caractères. En C, une chaîne est terminée avec un\ 0 code> - qui prend un caractère supplémentaire.const char * arr [] = {"littéral", "string", "pointeur", "tableau"}; code> et notez le const b>.& Mots [0] CODE> ER ... Vous ne semblez pas avoir une variablemots code> à ce point. Avez-vous fait une erreur de copier votre code ou de laisser quelque chose?@teahupoo merci, je vais jeter un oeil à ça!
@Arjunsharkar Oh oui j'ai oublié \ 0, merci
@dmckee ouais vous avez raison c'est supposé être & words_array [0]
Je suppose que vous essayez de faire ce qui suit: const Char * consons mots_array [] = {"moelleux", "petit", "lapin"};