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

Comment déterminer si une chaîne C ou un char* ne contient que des chiffres ?

Linda Hamilton
Libérer: 2024-11-03 00:56:29
original
658 Les gens l'ont consulté

How to Determine if a C   String or char* Contains Only Digits?

Comment vérifier si une chaîne C ou un caractère* se compose exclusivement de chiffres

Question :

En C , est-il possible de déterminer si une chaîne ou un char* donné contient uniquement des caractères numériques ? Si oui, comment pouvons-nous trouver le premier caractère non numérique et des méthodes similaires s'appliquent-elles aux deux types ?

Réponse :

Oui, il existe plusieurs techniques pour évaluer si une chaîne ou un caractère* est constitué uniquement de chiffres. Voici deux approches potentielles :

  1. Méthode find_first_not_of() :

Cette méthode vérifie la première occurrence d'un caractère autre qu'un chiffre dans le saisir. Si le résultat est std::string::npos, cela implique que tous les caractères sont des chiffres.

<code class="cpp">bool is_digits(const std::string &str) {
    return str.find_first_not_of("0123456789") == std::string::npos;
}</code>
Copier après la connexion
  1. Std::all_of() Méthode (C 11 et supérieur) :

Cette méthode utilise l'algorithme std::all_of pour tester si chaque caractère de l'entrée répond à une condition particulière, dans ce cas, s'il s'agit d'un chiffre.

<code class="cpp">bool is_digits(const std::string &str) {
    return std::all_of(str.begin(), str.end(), ::isdigit);
}</code>
Copier après la connexion

Application aux deux types :

Les méthodes décrites ci-dessus peuvent être utilisées avec les types std::string et char. Cependant, il est crucial d'assurer une conversion ou une initialisation appropriée lorsque vous travaillez avec char pour maintenir la cohérence dans la représentation des données et éviter tout comportement involontaire.

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