首頁  >  文章  >  後端開發  >  如何檢查 C 字串和字元指標中的數字?

如何檢查 C 字串和字元指標中的數字?

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>

基於字元指標的方法

對於字元指針,您可以使用std::all_of() 函數和::isdigit 函數來檢查指標中的所有字元是否都是數字。如果字元是數字 (0-9),則 ::isdigit 函數傳回 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 字串和字元指標中的數字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn