Pages : 1
#1 Le 07/09/2012, à 10:12
- Hydhen
Bug avec la commande "scanf"
Bonjour à tous !
J'ai un petit soucis sous Linux que je n'ai jamais rencontré sous Windows, voilà mon code pour commencer :
#include <stdio.h>
int nombre;
int nombre2;
int resultat;
int calcul(int nombre,int nombre2)
{
resultat=nombre+nombre2;
return resultat;
}
int main()
{
printf("\n\n************DEBUT DE PROGRAMME***\n\n");
printf("Entrer un nombre : ");
scanf("%d\n\n", &nombre);
printf("Entrer un second nombre : ");
scanf("%d\n\n", &nombre2);
calcul(nombre,nombre2);
printf("Le total vaux : %d", resultat);
printf("\n\n************FIN DE PROGRAMME*****\n\n");
}
Mon problème n'est ni lors de la compilation ni lors de l'écriture mais pendant le test.
Je compile mon fichier nommé Test1.c
gcc Test1.c -o Test1
Puis je le lance avec :
./Test1
Tout s'affiche correctement jusqu'au premier scanf, je dois rentrer un nombre, j'appuie sur entré et cela me fait le même effet que dans un éditeur de texte, un retour a la ligne...
Le seul moyen que j'ai trouver c'est d'ajouter un autre caractère qu'un chiffre, mais cela me fait bugger mon programme, il défile et me zappe le deuxième scanf.. mais il me fait l'addition du premier nombre + 0 dans l'avant dernier printf...
Si quelqu'un à une idée je suis preneur.
PS: Si quelqu'un sais comment je peut copier coller du texte depuis la console pour vous montrez le résultat je suis tout ouïe, je suis pas encore très bien habitué à Linux
Merci d'avance !
Processeur : AMD Athlon(tm) 64 X2 Dual Core Processor 5000+ 2.59 GHz
RAM : 4.00Gb DDR2
Carte Graphique : GeForce 440GTX 1Gb DDR5
OS : Windows 7 Ultimate x64 - Ubuntu 12.04LTS
Hors ligne
#2 Le 07/09/2012, à 10:23
- Braun
Re : Bug avec la commande "scanf"
Bonjour,
Pourrais-tu m'expliquer pourquoi tu places deux "newline " dans la chaîne de format du scanf ???
Perso je n'en aurais mis aucun.
Hors ligne
#3 Le 07/09/2012, à 10:24
- Hydhen
Re : Bug avec la commande "scanf"
C'est pour que ce soit plus lisible lors du test sur la console sinon c'est tout serrer et sa me crame les yeux
Sa pourrait venir de sa ?
EDIT : Oui le problème venait bien des new line dans le scanf, merci du coup de main !
Dernière modification par Hydhen (Le 07/09/2012, à 10:26)
Processeur : AMD Athlon(tm) 64 X2 Dual Core Processor 5000+ 2.59 GHz
RAM : 4.00Gb DDR2
Carte Graphique : GeForce 440GTX 1Gb DDR5
OS : Windows 7 Ultimate x64 - Ubuntu 12.04LTS
Hors ligne
#4 Le 07/09/2012, à 10:40
- Braun
Re : Bug avec la commande "scanf"
Si tu veux améliorer le confort visuel, tu places un ou plusieurs newline dans le printf suivant car scanf est réservé aux entrées.
Hors ligne
Pages : 1