ホームページ  >  記事  >  バックエンド開発  >  C の文字列と Char ポインタの数字をチェックするにはどうすればよいですか?

C の文字列と Char ポインタの数字をチェックするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-02 17:17:02123ブラウズ

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

C の文字列と文字ポインタの数字のチェック

文字列または文字ポインタに数字のみが含まれているかどうかを判断することは、プログラミングにおける一般的なタスクです。 C には、std::string と char* の両方に適用できる、このチェックを実行する方法がいくつか用意されています。

文字列ベースのメソッド

std::string かどうかを確認するには数字のみが含まれている場合は、find_first_not_of() 関数を使用できます。この関数は、指定された文字セットに一致しない最初の文字の位置を返します。関数が std::string::npos を返す場合、それは数字以外の文字が見つからなかったことを示し、したがって文字列には数字のみが含まれます。

<code class="cpp">bool is_digits(const std::string &str)
{
    return str.find_first_not_of("0123456789") == std::string::npos;
}</code>

Char ポインターベースのメソッド

文字ポインターの場合、 std::all_of() 関数と ::isdigital 関数を使用して、ポインター内のすべての文字が数字であるかどうかを確認できます。 ::isdigital 関数は、文字が数字 (0 ~ 9) の場合は true を返し、それ以外の場合は false を返します。

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

どちらのメソッドも、入力文字列または文字ポインターが ASCII 文字のシーケンスであると想定していることに注意してください。 。非 ASCII 文字が予期される場合は、適切な変更が必要になる場合があります。

以上がC の文字列と Char ポインタの数字をチェックするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。