Aide sur la programmation
Résolu
Label_1813
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
Label_1813 Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
Label_1813 Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Aide sur la programmation
- Application de programmation - Guide
- Forcer la fermeture d'un programme - Guide
- Comment programmer un mail sur gmail - Guide
- Programmer un message sur iphone - Guide
- Desinstaller un programme sur windows - Guide
2 réponses
Bonjour Label_1813,
Il y a plusieurs façons, et elles dépendent en partie de la façon dont tu prend l'entrée du clavier (avec scanf ou fgets) et de ce que tu appelles des chiffres (un entier signé ou non, ou un nombre à virgule et le type C correspondant).
Si tu utilises scanf pour demander un entier, tu peux juste vérifier la valeur de retour de la fonction, qui retourne le nombre d'éléments de ta liste de spécificateurs et d'arguments correspondants capturés avec succès.
http://www.cplusplus.com/reference/cstdio/scanf/
Par exemple,
Tu peux aussi utiliser
Dal
Il y a plusieurs façons, et elles dépendent en partie de la façon dont tu prend l'entrée du clavier (avec scanf ou fgets) et de ce que tu appelles des chiffres (un entier signé ou non, ou un nombre à virgule et le type C correspondant).
Si tu utilises scanf pour demander un entier, tu peux juste vérifier la valeur de retour de la fonction, qui retourne le nombre d'éléments de ta liste de spécificateurs et d'arguments correspondants capturés avec succès.
http://www.cplusplus.com/reference/cstdio/scanf/
Par exemple,
scanf("%d", &entier);a un seul spécificateur "%d" et donc un seul argument d'adresse d'un int attendu, et doit donc retourner 1 en cas de succès.
#include <stdio.h> int main(void) { int entier = 0; printf("Entier : "); fflush(stdout); while (scanf("%d", &entier) != 1) { /* vider stdin */ int c; while ((c = getchar()) != '\n' && c != EOF) ; /* se plaindre */ printf("Erreur, veuillez saisir un entier : "); fflush(stdout); } printf("Merci, vous avez tapé l'entier : %d\n", entier); printf("(note : les caractères éventuellement saisis après " "ce nombre entier sont ignorés et demeurent dans stdin)\n"); return 0; }
Tu peux aussi utiliser
fgets()et tenter de convertir la saisie avec
strtol(), c'est un peu plus compliqué, mais cela permet plus de contrôle.
Dal
Label_1813
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
Super merci infiniment