Longueur chaine de caractère en C/C++

Résolu
cs_Folcoche Messages postés 2 Date d'inscription dimanche 12 mars 2006 Statut Membre Dernière intervention 12 avril 2008 - 12 avril 2008 à 17:19
cs_Folcoche Messages postés 2 Date d'inscription dimanche 12 mars 2006 Statut Membre Dernière intervention 12 avril 2008 - 12 avril 2008 à 18:47
Bonjours,

Je dois réaliser le jeu du pendu en Console windows, a partir du logiciel Dev C++.
Je bute sur une soucis de longueur de chaine de caractère.

Voici mon sous programme :

void lire_mot (chaine & mot, int taille)
{
     cout << "Tapez votre mot : " ;
     cin.getline (mot,MAX);        // saisie de la chaine de caractere
     taille = 0;
     d2a(mot);                     // suppression des accents
     strupr(mot);                  // conversion en majuscule
     taille = strlen(mot);         // mesure la taille du mot
     system("cls");                // efface l'ecran
}

le programme se compile comme il faut, je fais un test rapide par exemple le mot "pendu", il m'affiche le mot comme je le souhaite mais le seul probleme c'est la longueur du mot. Il m'affiche 2293700.
Je ne vois pas où est l'erreur. Le programme me donne t'il la longueur en ascii ?!

Merci

2 réponses

cs_Arnotic Messages postés 933 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 9 janvier 2012
12 avril 2008 à 17:37
void lire_mot (chaine & mot, int *taille)
{
     cout << "Tapez votre mot : " ;
     cin.getline (mot,MAX);        // saisie de la chaine de caractere
     taille = 0;
     d2a(mot);                     // suppression des accents
     strupr(mot);                  // conversion en majuscule
     *taille = strlen(mot);         // mesure la taille du mot
     system("cls");                // efface l'ecran
}

void test() {
   int iTaille;
   char szMot[256];
   lire_mot(&szMot, &iTaille);
}

Faut passer un pointeur d'int à ta fonction.

@+
Arnotic,
Admin CS
3
cs_Folcoche Messages postés 2 Date d'inscription dimanche 12 mars 2006 Statut Membre Dernière intervention 12 avril 2008
12 avril 2008 à 18:47
Merci, ca marche
0
Rejoignez-nous