isdigit、iswdigit、_isdigit_l、_iswdigit_l
确定整数是否表示十进制数字字符。
int isdigit(
int c
);
int iswdigit(
wint_t c
);
int _isdigit_l(
int c,
_locale_t locale
);
int _iswdigit_l(
wint_t c,
_locale_t locale
);
参数
c
要测试的整数。locale
要使用的区域设置。
返回值
如果 c 是十进制数字字符的特定表示,则每个实例返回非零。 如果 c 是十进制数 (0 – 9),isdigit 返回一个非零值。 如果 c 是对应于十进制数字字符的宽字符,iswdigit 返回一个非零值。 如果 c 不满足测试条件,则其中每个实例返回 0。
这些带有 _l 后缀的函数的版本使用传递区域设置而不是其与区域设置相关的行为的当前区域设置。 有关详细信息,请参阅区域设置。
如果 c 不是 EOF 或在范围 0 到 0xFF 中(包含 0 和 0xFF),则 isdigit 和 _isdigit_l 行为未定义。 如果使用的是调试 CRT 库且 c 不是这些值之一,函数就会引发断言。
一般文本例程映射
TCHAR.H 例程 |
未定义 _UNICODE & _MBCS |
已定义 _MBCS |
已定义 _UNICODE |
---|---|---|---|
_istdigit |
isdigit |
iswdigit |
|
_istdigit_l |
_isdigit_l |
_iswdigit_l |
要求
例程 |
必需的标头 |
---|---|
isdigit |
<ctype.h> |
iswdigit |
<ctype.h> 或 <wchar.h> |
_isdigit_l |
<ctype.h> |
_iswdigit_l |
<ctype.h> 或 <wchar.h> |
有关其他兼容性信息,请参见兼容性。