Erreur après compilation
Fermé
float
-
6 déc. 2008 à 21:24
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 6 déc. 2008 à 22:14
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 6 déc. 2008 à 22:14
A voir également:
- Erreur après compilation
- Erreur 1004 vba ✓ - Forum VB / VBA
- Erreur 1000 france tv - Forum MacOS
- Youtube une erreur s'est produite ✓ - Forum YouTube
- Free erreur 38 ✓ - Forum Mobile
- Code erreur s05-05 - Forum Téléviseurs
2 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 817
6 déc. 2008 à 21:47
6 déc. 2008 à 21:47
Salut,
Il y a plusieurs problèmes.
Il ne faut jamais employer gets, mais lui préférer fgets. gets prend un argument un char* et non un char.
T'as oublié une esperluette devant la variable n dans le premier sscanf de main.
D'ailleurs tu peux utiliser do while et ne pas respecter cette portion.
Même remarque pour la variable m.
Et enfin dernière remarque, n'oublie pas de poster ton code en utilisant les balises "code" (à droite du bouton souligné).
Cdlt
Il y a plusieurs problèmes.
Il ne faut jamais employer gets, mais lui préférer fgets. gets prend un argument un char* et non un char.
T'as oublié une esperluette devant la variable n dans le premier sscanf de main.
D'ailleurs tu peux utiliser do while et ne pas respecter cette portion.
Même remarque pour la variable m.
Et enfin dernière remarque, n'oublie pas de poster ton code en utilisant les balises "code" (à droite du bouton souligné).
Cdlt
Merci d'avoir bien voulu me répondre. Dzl pour le code je suis un peut tête en l'air :p
Concernant ta première remarque: J'ai remplacé les gets par fgets et la 8 erreurs s'affiche a la compilation mais bon je n'en voit que 4 : Les 2 d'avants et
too few arguments to function `fgets'
too few arguments to function `sscanf'
Concernant la deuxième
Concernant ta première remarque: J'ai remplacé les gets par fgets et la 8 erreurs s'affiche a la compilation mais bon je n'en voit que 4 : Les 2 d'avants et
too few arguments to function `fgets'
too few arguments to function `sscanf'
Concernant la deuxième
D'ailleurs tu peux utiliser do while et ne pas respecter cette portion., je ne l'ai pas bien comprise
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 817
6 déc. 2008 à 22:14
6 déc. 2008 à 22:14
Le prototype de fgets n'est pas le même que gets, c'est d'ailleur ça qui fait que c'est mieux.
Le prototype est fgets(char* chaine ,int size, FILE*fstream). Le premier argument, c'est pour la chaine de caractère, size la taille et le dernier tu mettras le flux stdin.
Un exemple :
Pour le do while, ce que je veux dire :
peut-être simplifié en :
Cdlt
Le prototype est fgets(char* chaine ,int size, FILE*fstream). Le premier argument, c'est pour la chaine de caractère, size la taille et le dernier tu mettras le flux stdin.
Un exemple :
char chaine[10]; fgets(chaine,sizeof(chaine),stdin); //pour convertir en nombre int nb=strtol(chaine,NULL,10); //tu peux utiliser comme tu as fait sscanf
Pour le do while, ce que je veux dire :
scanf("%d",&n);
while(n<0){
scanf("%d",&n);
}
peut-être simplifié en :
do{
scanf("%d",&n);
}while(n<0);
Cdlt