Probleme avec mes "if"...
Résolu/Fermé
davidmicka23
Messages postés
15
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
29 novembre 2024
-
31 déc. 2012 à 00:46
davidmicka23 Messages postés 15 Date d'inscription mercredi 19 décembre 2012 Statut Membre Dernière intervention 29 novembre 2024 - 31 déc. 2012 à 01:04
davidmicka23 Messages postés 15 Date d'inscription mercredi 19 décembre 2012 Statut Membre Dernière intervention 29 novembre 2024 - 31 déc. 2012 à 01:04
4 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
31 déc. 2012 à 00:54
31 déc. 2012 à 00:54
L'opérateur == compare deux pointeurs (la position de tes chaînes de caractères dans la mémoire), en aucun cas ça ne compare la valeur des chaînes de caractères !
Donc comme les valeurs sont toujours différentes, tu ne rentres jamais dans le if...
Tu dois utiliser strcmp ou une fonction équivalente :
Donc comme les valeurs sont toujours différentes, tu ne rentres jamais dans le if...
Tu dois utiliser strcmp ou une fonction équivalente :
if (strcmp(Choix1,"oui")==0) { printf("Combien pour votre angle en degres ?\n");
yoann090
Messages postés
9180
Date d'inscription
mercredi 12 août 2009
Statut
Contributeur sécurité
Dernière intervention
13 avril 2016
1 689
31 déc. 2012 à 00:50
31 déc. 2012 à 00:50
Bonjour, on voit pas ou il se ferme comment sont declaree les variables c'est un peu dur de t'aider lol
davidmicka23
Messages postés
15
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
29 novembre 2024
3
31 déc. 2012 à 00:56
31 déc. 2012 à 00:56
int main(int argc, char *argv[])
{
char Choix1[3], ;
float Alpha=0 ;
FILE* fichier = NULL;
fichier = fopen("test.txt", "w");
if (fichier != NULL)
{
printf("Voulez vous entrer un angle ?\n");
scanf("%s", Choix1) ;
printf("Choix1 vaut %s", Choix1 ) ;
if (Choix1=="oui"){
printf("Combien pour votre angle en degres ?\n") ;
}
}
}
{
char Choix1[3], ;
float Alpha=0 ;
FILE* fichier = NULL;
fichier = fopen("test.txt", "w");
if (fichier != NULL)
{
printf("Voulez vous entrer un angle ?\n");
scanf("%s", Choix1) ;
printf("Choix1 vaut %s", Choix1 ) ;
if (Choix1=="oui"){
printf("Combien pour votre angle en degres ?\n") ;
}
}
}
yoann090
Messages postés
9180
Date d'inscription
mercredi 12 août 2009
Statut
Contributeur sécurité
Dernière intervention
13 avril 2016
1 689
31 déc. 2012 à 01:01
31 déc. 2012 à 01:01
Regarde la reponse de KX ;)
davidmicka23
Messages postés
15
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
29 novembre 2024
3
31 déc. 2012 à 01:04
31 déc. 2012 à 01:04
Merci
ça fonctionne avec strcmp() !
Super merci à tous les deux!
Je vais essayer de retenir que l'opérateur == compare 2 pointeurs !
En tout ça marche. C'est pas beau ça !
ça fonctionne avec strcmp() !
Super merci à tous les deux!
Je vais essayer de retenir que l'opérateur == compare 2 pointeurs !
En tout ça marche. C'est pas beau ça !