Scanf()

Signaler
Messages postés
2
Date d'inscription
mardi 17 octobre 2000
Statut
Membre
Dernière intervention
27 avril 2002
-
Messages postés
3
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
20 mars 2007
-
bonjour à tous,

j'ecris par exemple :

int fonction(){

if(true) return 0;
else return -1
}
dans main, si cette fonction retourne 0,
alors j'applique un scanf() :

int main(){
int choix;

if (fonction() == 0)
scanf("%d", &choix);
}

tout ce passe bien à la compilation mais lors de l'appel du prog, ça plante.

si je passe le scanf avant cette fonction, c'est bon.

Si vous avez la soluce, merci.

3 réponses

Messages postés
126
Date d'inscription
mercredi 18 juillet 2001
Statut
Membre
Dernière intervention
27 octobre 2004

Bof, quand inl ne manque pas de point virgule, ça marche...

#include <stdio.h>

int fonction(){
if(true) return 0;
else return -1; // ici le point virgule !
}

int main(){
int choix;

if (fonction() == 0)
scanf("%d", &choix);

return 0; // int main() -> attend un entier en retour
}
Messages postés
2
Date d'inscription
mardi 17 octobre 2000
Statut
Membre
Dernière intervention
27 avril 2002

ben je t'envoie mon source si tu veux et tu me lafaispasser !
va pas mefaire ton prof aver le point virgule et parske je fais rien retourner à main(), c'est qu'un exemple, si tu regarde aussi simplement que ça et en plus que j'ai repris mon clavier tout pouri paske j'ai renversé mon café sur l'autre...

Alors si quelqu'un sait pourquoi mon appel de scanf() me fait chier aprés l'appel de toutes de fonctions et procédures...
Messages postés
3
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
20 mars 2007

peut - être que &choix se modifie avec l'appel de la fonction