Maison > développement back-end > C++ > Comment pouvez-vous vérifier les chiffres dans les chaînes C et les pointeurs de caractères ?

Comment pouvez-vous vérifier les chiffres dans les chaînes C et les pointeurs de caractères ?

Susan Sarandon
Libérer: 2024-11-02 17:17:02
original
209 Les gens l'ont consulté

How Can You Check for Digits in C   Strings and Char Pointers?

Vérification des chiffres dans les chaînes C et les pointeurs de caractères

Déterminer si un pointeur de chaîne ou de caractère contient uniquement des caractères numériques est une tâche courante en programmation . C propose plusieurs façons d'effectuer cette vérification, applicables à la fois à std::string et à char*.

Méthode basée sur une chaîne

Pour vérifier si une std::string ne contient que des chiffres, vous pouvez utiliser la fonction find_first_not_of(). Cette fonction renvoie la position du premier caractère qui ne correspond pas au jeu de caractères spécifié. Si la fonction renvoie std::string::npos, cela indique qu'aucun caractère autre que des chiffres n'a été trouvé et que la chaîne ne contient donc que 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

Méthode basée sur le pointeur de char

Pour un pointeur de caractère, vous pouvez utiliser la fonction std::all_of() avec la fonction ::isdigit pour vérifier si tous les caractères du pointeur sont des chiffres. La fonction ::isdigit renvoie vrai si le caractère est un chiffre (0-9), et faux sinon.

<code class="cpp">bool is_digits(const char* str)
{
    return std::all_of(str, str + strlen(str), ::isdigit); // C++11
}</code>
Copier après la connexion

Notez que les deux méthodes supposent que la chaîne d'entrée ou le pointeur de caractère est une séquence de caractères ASCII. . Si des caractères non-ASCII sont attendus, des modifications appropriées peuvent être nécessaires.

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