Controle de saisie

Fermé
baedyl Messages postés 9 Date d'inscription vendredi 27 février 2015 Statut Membre Dernière intervention 15 juin 2015 - 15 juin 2015 à 01:03
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 15 juin 2015 à 11:31
Bonjour,
Dans un programme que j'ai écrit quand je demande à l'utilisateur de rentrer un entier(scanf("%d",&c);), s'il rentre par exemple une lettre quelconque mon programme plante direct. j'aimerais savoir s'il n'y aurait pas un moyen de controler la saisie pour éviter au programme de s'arreter.
Merci, cordialement.



1 réponse

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
15 juin 2015 à 11:31
Bonjour,

Le plus sécurisé est de passer par une chaîne de caractère.
Par exemple :
char buffer[MAX];
. Pour la lecture, tu utilises fgets(), et pour la conversion (strtol()). En cas d'erreur de conversion, c'est que le nombre n'avait pas le format requis.

Cdlt,
1