[C] Où est le problème ?
Fermé
Calvin
-
1 août 2004 à 10:24
Canard007 Messages postés 5929 Date d'inscription mercredi 26 mai 2004 Statut Contributeur Dernière intervention 18 septembre 2009 - 2 août 2004 à 09:46
Canard007 Messages postés 5929 Date d'inscription mercredi 26 mai 2004 Statut Contributeur Dernière intervention 18 septembre 2009 - 2 août 2004 à 09:46
5 réponses
A propos, voila la liste des erreurs affichée, il y en a 11 et pas 8 :
c:\progra~3\nombre~1.c: In function `declaration':
c:\progra~3\nombre~1.c:11: `byte' undeclared (first use in this function)
c:\progra~3\nombre~1.c:11: (Each undeclared identifier is reported only once
c:\progra~3\nombre~1.c:11: for each function it appears in.)
c:\progra~3\nombre~1.c:11: parse error before `nombreSecret'
c:\progra~3\nombre~1.c: In function `jeu':
c:\progra~3\nombre~1.c:18: warning: unknown escape sequence `\d'
c:\progra~3\nombre~1.c:18: `essai' undeclared (first use in this function)
c:\progra~3\nombre~1.c:19: `nombreSecret' undeclared (first use in this function)
c:\progra~3\nombre~1.c:21: `compteur' undeclared (first use in this function)
c:\progra~3\nombre~1.c:36: parse error at end of input
c:\progra~3\nombre~1.c: In function `declaration':
c:\progra~3\nombre~1.c:11: `byte' undeclared (first use in this function)
c:\progra~3\nombre~1.c:11: (Each undeclared identifier is reported only once
c:\progra~3\nombre~1.c:11: for each function it appears in.)
c:\progra~3\nombre~1.c:11: parse error before `nombreSecret'
c:\progra~3\nombre~1.c: In function `jeu':
c:\progra~3\nombre~1.c:18: warning: unknown escape sequence `\d'
c:\progra~3\nombre~1.c:18: `essai' undeclared (first use in this function)
c:\progra~3\nombre~1.c:19: `nombreSecret' undeclared (first use in this function)
c:\progra~3\nombre~1.c:21: `compteur' undeclared (first use in this function)
c:\progra~3\nombre~1.c:36: parse error at end of input
:-S je crois que ce topic est bien parti pour être élu "topic le plus c** du siècle".
Bon là je viens de réfléchir 3 minutes (regardez l'heure des posts...) et en lisant un peu les erreurs et en essayant quelques modifs il ne me reste plus qu'une erreur à résoudre. Bizarrement on ne peut pas appeler une fonction qui ne fait que déclarer des variables, je retiendrai ça pour la prochaine fois.
Nouvelle version du code :
#include <stdio.h>
int main(int argc, char *argv[])
{
jeu();
return 0;
}
jeu()
{
short nombreSecret=1743;
short essai=0;
short compteur=0;
printf("Je pense à un nombre entre 1 et 5000. Essayez de le deviner : ");
scanf(" %d", &essai);
if(essai = nombreSecret)
{
printf("FELICITATIONS ! Vous avez trouvé le Nombre Secret en &d essais. Ca m'en troue le slip !", compteur);
}
else
{
if(essai < nombreSecret)
{
printf("Aaaah non, désolé, le nombre que vous avez entré est trop petit.");
compteur++;
}
else
{
printf("Aaaaah non, désolé, le nombre que vous avez entré est trop grand.");
compteur++;
}
}
l'erreur restante : c:\progra~3\nombre~1.c:33: parse error at end of input
Voila. Je vais encore chercher, puis je viendrais ici si je trouve la solution, pour demander la suppression de ce topic inutile :-D
Et m******de... il va falloir que je change de pseudo, sinon je suis grillé...
Bon là je viens de réfléchir 3 minutes (regardez l'heure des posts...) et en lisant un peu les erreurs et en essayant quelques modifs il ne me reste plus qu'une erreur à résoudre. Bizarrement on ne peut pas appeler une fonction qui ne fait que déclarer des variables, je retiendrai ça pour la prochaine fois.
Nouvelle version du code :
#include <stdio.h>
int main(int argc, char *argv[])
{
jeu();
return 0;
}
jeu()
{
short nombreSecret=1743;
short essai=0;
short compteur=0;
printf("Je pense à un nombre entre 1 et 5000. Essayez de le deviner : ");
scanf(" %d", &essai);
if(essai = nombreSecret)
{
printf("FELICITATIONS ! Vous avez trouvé le Nombre Secret en &d essais. Ca m'en troue le slip !", compteur);
}
else
{
if(essai < nombreSecret)
{
printf("Aaaah non, désolé, le nombre que vous avez entré est trop petit.");
compteur++;
}
else
{
printf("Aaaaah non, désolé, le nombre que vous avez entré est trop grand.");
compteur++;
}
}
l'erreur restante : c:\progra~3\nombre~1.c:33: parse error at end of input
Voila. Je vais encore chercher, puis je viendrais ici si je trouve la solution, pour demander la suppression de ce topic inutile :-D
Et m******de... il va falloir que je change de pseudo, sinon je suis grillé...
C'est bon j'ai trouvé, il manquait juste l'accolade fermante de la fonction jeu(). Je demande officiellement la suppression de ce topic par les autorités compétentes avant que tout le monde ne se foute de ma g***le (et ils auraient bien raison.).
Attention ! Ton code n'a peut être plus de bug mais tel quel il ne fonctionnera pas : la fenêtre DOS se fermera instantanément après le 1er essai. Rajoute une boucle while dans la fonction main() pour éviter ce problème.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Canard007
Messages postés
5929
Date d'inscription
mercredi 26 mai 2004
Statut
Contributeur
Dernière intervention
18 septembre 2009
215
2 août 2004 à 09:46
2 août 2004 à 09:46
à moins de lancer l'exe à la main dans la fenetre dos ^^
COIN!
COIN!