Shuugeki
Messages postés3Date d'inscriptionmercredi 12 novembre 2008StatutMembreDernière intervention20 janvier 2009
-
20 janv. 2009 à 17:00
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 2014
-
20 janv. 2009 à 21:12
Bonjour, je dois pour mes cours créer une fonction comptant le nombre de chaque caractère de l'alphabet contenu dans un mot, j'utilise pour sauvegarder les résultats un tableau à 28 colonnes, 2 lignes déclaré comme ceci en main
void comp(char *mot, char *count) //mot est le tableau contenant la chaine de caractère à traiter
En plus d'avoir à compter le nombre chaque caractère de l'alphabet je dois compter le nombre de caractère spéciaux (le total) et le nombre de caractères total (faire un strlen en gros). Les cases [26] et [27] de mon tableau count servent à sauver ces données.
pour compter le nombre de caractère je fais simplement
int i=0;
while(mot[i]!=`\0')
{
count[27][0]++; /*J'ai aussi testé avec un count[27][0]=count[27][0]+1 au cas où l'incrémentation ne fonctionnerait pas sur tableau, mais ça ne change rien*/
i++;
}
Le problème, et il se posera aussi pour les autres buts de la fonction vu que je dois passer mon temps à sauver des données de cette façon est qu'à la compilation j'ai le message d'erreur "subscripted value is neither array nor pointer" pour la ligne où j'incrémente le compteur dans le tableau.
Je pense que mon soucis viens d'un problème de pointeur sur tableau multidimensionnel, mais après recherches je n'ai pas trouvé comment régler ceci ou alors, pas compris.
Si quelqu'un pourrait m'expliquer comment gérer le passage par adresse / les pointeurs sur tableau multidimensionnel, ou me dire si mon erreur vient d'autre part, merci beaucoup.