在本教程中,我们将借助示例了解 C++ isdigit() 函数。
C++ 中的isdigit()
函数检查给定字符是否为数字。它在cctype 头文件中定义。
示例
#include <iostream>
using namespace std;
int main() {
// checks if '9' is a digit
cout << isdigit('9');
return 0;
}
// Output: 1
isdigit() 语法
用法:
isdigit(int ch);
在这里,ch
是我们要检查的字符。
参数:
isdigit()
函数采用以下参数:
- ch- 要检查的字符,投射到
int
输入或EOF
返回:
isdigit()
函数返回:
- 如果
ch
是数字,则为非零整数值 (true
) - 如果
ch
不是数字,则整数零 (false
)
isdigit() 原型
cctype 头文件中定义的isdigit()
原型为:
int isdigit(int ch);
如我们所见,字符参数ch
实际上是int
类型。这意味着isdigit()
函数检查ASCII角色的价值。
isdigit() 未定义行为
的行为isdigit()
是不明确的如果:
ch
的值不能表示为unsigned char
,或者ch
的值不等于EOF
。
示例:C++ isdigit()
#include <cctype>
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char str[] = "hj;pq910js4";
int check;
cout << "The digit in the string are:" << endl;
for (int i = 0; i < strlen(str); i++) {
// check if str[i] is a digit
check = isdigit(str[i]);
if (check)
cout << str[i] << endl;
}
return 0;
}
输出
The digit in the string are: 9 1 0 4
在这里,我们创建了一个 C-string str
。然后,我们使用for
循环仅打印字符串中的数字。循环从 i = 0
运行到 i = strlen(str) - 1
。
for (int i = 0; i < strlen(str); i++) {
...
}
换句话说,循环遍历整个字符串,因为 strlen()
给出了 str
的长度。
在循环的每次迭代中,我们使用isdigit()
函数来检查字符串元素str[i]
是否为数字。结果存储在check
变量中。
check = isdigit(str[i]);
如果check
返回非零值,我们打印字符串元素。
if (check)
cout << str[i] << endl;
相关用法
- C++ isdigit()用法及代码示例
- C++ is_unsigned用法及代码示例
- C++ is_fundamental用法及代码示例
- C++ iswdigit()用法及代码示例
- C++ is_scalar用法及代码示例
- C++ is_pointer用法及代码示例
- C++ is_polymorphic用法及代码示例
- C++ isalpha()用法及代码示例
- C++ is_rvalue_reference用法及代码示例
- C++ is_class用法及代码示例
- C++ iswxdigit()用法及代码示例
- C++ isfinite()用法及代码示例
- C++ isnormal()用法及代码示例
- C++ isless()用法及代码示例
- C++ ispunct()用法及代码示例
- C++ iswupper()用法及代码示例
- C++ is_trivial用法及代码示例
- C++ is_void用法及代码示例
- C++ isxdigit()用法及代码示例
- C++ islessequal()用法及代码示例
注:本文由纯净天空筛选整理自 C++ isdigit()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。