函数

isdigit

int isdigit ( int c );

检查字符是否是十进制数字(decimal digit)

检查 c 是否是一个十进制数字。

十进制数字有:0 1 2 3 4 5 6 7 8 9

头文件 的参考中,有标准 ASCII 字符集的各个字符在不同 ctype 函数的返回值的详细图表。

在 C++ 中,这个函数的 locale-specific 模板版本 isdigit 在头文件 中。

参数

c

被检查的字符,被转化为 int 型或 EOF。

返回值

如果 c 的确是一个十进制数字,则返回一个非0值 (也就是 true ),否则返回0 (也就是 false)。

例子


1. /* isdigit example */
2. #include <stdio.h>
3. #include <stdlib.h>
4. #include <ctype.h>

6. int main()
7. {
8. char str[] = "1776ad";
9. int year;
10. if(isdigit(str[0]))
11. {
12. year = atoi(str);
13. printf("The year that followed %d was %d.\n", year, year + 1);
14. }
15. return 0;
16. }

输出:


1. The year that followed 1776 was 1777.

isdigit 被用来检查 str 的第一个字符是否是一个十进制数字,来成为一个有效的候选者被 atoi 转化为一个整型的值。

另请参阅

函数名 描述
isalnum 检查字符是否是字母或数字(alphanumeric) (函数)
isalpha 检查字符是否是字母(alphabetic) (函数)