voila je vourais savoir comment faire un scanf() sans retourner à la ligne![]()
voila je vourais savoir comment faire un scanf() sans retourner à la ligne![]()
Salut,
en sortie :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 /*...*/ int i; printf("entrez un entier : "); scanf("%d",&i); printf("%d",i); /*...*/
C'est ce que tu souhaites ?entrez un entier : 5
5
Mais on va surement te le dire, scanf est déconseillé pour les saisies..
Voir ici
ou bien, il souhaite qu'on puisse poser (et répondre) plusieurs questions sur une même ligne...
Mais ça, ce n'est pas possible, puisqu'il faut nécessairement appuyer sur Entrée pour valider...
Par contre, on peut demander deux valeurs d'un coup avec un seul scanf(). Le problème, c'est qu'on ne peut rien afficher entre la saisie de la première valeur et celle de la seconde...
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Oui en effet poser plusieurs questions sur une seule ligne n'est pas possibleEnvoyé par Médinoc
Precise un peu ta question car peut etre que le saisie de plusieurs valeurs d'un coup (donc sur une seule ligne) te conviendraitEnvoyé par mello
![]()
Tu veux dire une saisie directe du clavier ? Pas possible en C standard. Si tu as conio, cscanf() ou getch() pour construire la fonction si elle n'existe pas...Envoyé par mello
oui c'etait sa je voudrais pouvoir poser et repondre a plusieur question sur la meme ligne .... :s c'est vraiment pas possible ?Envoyé par Médinoc
Je pense qu'Emmanuel Delahaye a repondu à ta question![]()
Je comprends pas ici sous windows et dev C++ lorsque je metsEnvoyé par sorry60
j'ai une demande poru envoyer un rapport d'erreur alors que chez moi sous BSD avec le même code ben ça marche
Code : Sélectionner tout - Visualiser dans une fenêtre à part fgets (i, sizeof i, stdin);![]()
Vous avez une explication à ce comportement?
PS: je regardais un peu fgets() ben si c'est plus safe c'est aussi plus délicat comme opérateur...
Salut
fgets lit des caractères qui sont rangés dans un buffer, tu interprètes ensuite en entier avec strtol :
Par exemplefgets suppose qu'on lui donne en premier argument une adresse où ranger les caractères et en second argument la taille maximum de cette zone.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 char tmp[100]; int i; fgets (buf, sizeof buf, stdin); i = (int) strtol(buf, NULL, 10);
"La haine seule fait des choix" - Koan Zen
"Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
"Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
Faites du Prolog, ça vous changera les idées !
Ma page Prolog
Mes codes sources commentés
Mon avatar : La Madeleine à la veilleuse de Georges de La Tour
Avec le meme code?Envoyé par Gnux
fgets veut en premier parametre un pointeur sur un char, pas un entier
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 char *fgets (char *s, int size, FILE *stream);
AvecEnvoyé par Gnux
, chez moi, ça ne compile pas. fgets() attend l'adresse du premier élément d'un tableau de char. Evidemment, j'ai inclus <stdio.h> et j'ai activé les warnings du compilateur
Code : Sélectionner tout - Visualiser dans une fenêtre à part int i;
. Si ça compile et que ça exécute, le comportement est indéfini.
Code : Sélectionner tout - Visualiser dans une fenêtre à part -Wall -Wextra -02 -ansi
Non. Il y a bien longtemps que je ne perd plus mon temps à expliquer un comportement indéfini. Ca va plus vite de corriger le code...j'ai une demande poru envoyer un rapport d'erreur alors que chez moi sous BSD avec le même code ben ça marche![]()
Vous avez une explication à ce comportement?
Il faut respecter le type des paramètres...PS: je regardais un peu fgets() ben si c'est plus safe c'est aussi plus délicat comme opérateur...
Partager