檢查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中文網其他相關文章!