Maison > développement back-end > C++ > le corps du texte

Comment valider efficacement la saisie numérique en C ?

Mary-Kate Olsen
Libérer: 2024-11-19 15:22:02
original
513 Les gens l'ont consulté

How to Validate Numeric Input in C   Effectively?

Validation de la saisie numérique en C

La validation de la saisie utilisateur pour garantir qu'elle est conforme à des types de données spécifiques est cruciale dans les programmes de saisie de données. En C , un défi courant consiste à vérifier que la saisie se situe dans la plage des nombres entiers.

Votre approche actuelle de la validation des saisies utilisant une boucle while pour parcourir les caractères afin de vérifier s'ils sont numériques est incomplète. Cependant, la solution réside dans l'utilisation des capacités de gestion des erreurs du flux d'entrée (cin).

Lorsque cin rencontre une entrée non valide, il définit un indicateur de bit d'échec. En utilisant ce drapeau, vous pouvez suivre les étapes suivantes :

  1. Vérifiez si cin a rencontré une erreur en utilisant cin.fail() ou si (!cin).
  2. S'il y a un erreur, effacez le bit d'échec à l'aide de cin.clear().
  3. Jetez l'entrée non valide en utilisant cin.ignore(std::numeric_limits::max(), 'n') pour lire et supprimez tous les caractères jusqu'au caractère de nouvelle ligne.
  4. Invitez l'utilisateur à saisir à nouveau un entier valide.

En détectant et en gérant l'état d'erreur de cin, vous pouvez vous assurer que le programme continue de s'exécuter avec succès, même lorsque l'utilisateur saisit une entrée non valide. Cette approche permet une validation des données plus robuste et plus conviviale en C .

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal