Probleme de char [Résolu]

Signaler
Messages postés
13
Date d'inscription
mardi 21 mai 2002
Statut
Membre
Dernière intervention
11 août 2004
-
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
-
J'ai un probleme avec une condition.
Je m'explique :
J'ai une variable : char Fonction[30];
Je rempli la variable grace a la lecture d'un fichier.
Ensuite j'ai une condition:
if(Fonction=="Haut")
Mais la condition n'est jamais meme quand Fonction vaut "Haut".
J'ai tenté diverse maniere pour y arriver, mais ca ne marche jamais. J'ai tenter par exemple de les convertir en char* les deux, en mode debogage j'obtenais "Haut" et "Haut" mais il ne rentrait jamais dans la condition.
Alors si qu'un a une idée, ou c'est deja heurté a ce probleme, merci de me faire part de votre experience.
PS: J'ai passé 5h sur ce probleme sans en venir a bout.
by ph0ton
fR0m m0NtpElLi3r !!!!

7 réponses

Messages postés
48
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
26 juillet 2005
3
Bonne comparaison de pointeurs...

essaies un truc du genre : strcmp(Fonction, "Haut");
ca risquerait presque de mieux marcher
Messages postés
48
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
26 juillet 2005
3
C'est quand meme dommage de perdre 5 heures la dessus, alors qu'une simple recherche sur "comparaison de chaine de caractères en C" dans n'importe quel moteur de recherche t'aurait donné la solution.

Voici par exemple un site qui explique très bien les fonction pour manipuler les chaines de caractères.
http://gilles.chagnon.free.fr/cours/cgi/cours4.html

et en français en plus
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
Remets toi devant un bouquin de C et regarde les fonctions de comparaisons de chaine (si c'est bien une chaine).

ciao...
BruNews, Admin CS, MVP Visual C++
Messages postés
13
Date d'inscription
mardi 21 mai 2002
Statut
Membre
Dernière intervention
11 août 2004

c'est pas vraimment le genre de reponse que j'attendais
Mais bon je vais continuer de me demerder par moi meme

by ph0ton
fR0m m0NtpElLi3r !!!!
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
ph0ton> c'etait pas pour ne pas repondre, mais pour ton bien.
Tu as visiblement saute des chapitres et tu ne pourras pas avancer ainsi.
Tu dois absolument comprendre tableaux et pointeurs.

ciao...
BruNews, Admin CS, MVP Visual C++
Messages postés
13
Date d'inscription
mardi 21 mai 2002
Statut
Membre
Dernière intervention
11 août 2004

ok je vais faire des recherches plus approfondie dans ce sens là, merci pour votre rapidité et vos aides.
PS: c'est vrai que j'ai lu en diagonale les chapitres concernant les chaines.
by ph0ton
fR0m m0NtpElLi3r !!!!
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
quand tu auras assimiler le chapitre sur les pointeurs et tableau, tu comprendras que fait d'ecrire
if(Fonction=="Haut") n'a aucun sens