isalnum
来自cppreference.com
定义于头文件 <ctype.h>
|
||
int isalnum( int ch ); |
||
检查给定的字符是否为当前 C 本地环境所分类的字母数字字符。在默认本地环境中,下列字符为字母数字:
- 数字(
0123456789
) - 大写字母(
ABCDEFGHIJKLMNOPQRSTUVWXYZ
) - 小写字母(
abcdefghijklmnopqrstuvwxyz
)
若 ch
的值不能表示为 unsigned char 且不等于 EOF ,则行为未定义。
参数
ch | - | 要分类的字符 |
返回值
若字符为字母数字字符,则为非零,否则为 0
。
示例
演示以不同的本地环境(操作系统限定)使用 isalnum() 。
运行此代码
#include <stdio.h> #include <ctype.h> #include <locale.h> int main(void) { unsigned char c = '\xdf'; // ISO-8859-1 中的德文字母 ß printf("isalnum('\\xdf') in default C locale returned %d\n", !!isalnum(c)); if(setlocale(LC_CTYPE, "de_DE.iso88591")) printf("isalnum('\\xdf') in ISO-8859-1 locale returned %d\n", !!isalnum(c)); }
可能的输出:
isalnum('\xdf') in default C locale returned 0 isalnum('\xdf') in ISO-8859-1 locale returned 1
引用
- C11 标准(ISO/IEC 9899:2011):
- 7.4.1.1 The isalnum function (p: 200)
- C99 标准(ISO/IEC 9899:1999):
- 7.4.1.1 The isalnum function (p: 181)
- C89/C90 标准(ISO/IEC 9899:1990):
- 4.3.1.1 The isalnum function
参阅
(C95) |
检查宽字符是否为字母或数字 (函数) |
ASCII值 (十六进制) |
字符 |
isalnum |
||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 - 8 | 0x00-0x08
|
控制码 (NUL 等)
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
9 | 0x09
|
制表符 (\t )
|
≠0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
10 - 13 | 0x0A-0x0D
|
空白符 (\n , \v , \f , \r )
|
≠0
|
0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
14 - 31 | 0x0E-0x1F
|
控制码 | ≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
32 | 0x20
|
空格 | 0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
33 - 47 | 0x21-0x2F
|
!"#$%&'()*+,-./
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
48 - 57 | 0x30-0x39
|
0123456789
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
0
|
0
|
0
|
≠0
|
≠0
|
58 - 64 | 0x3a-0x40
|
:;<=>?@
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
65 - 70 | 0x41-0x46
|
ABCDEF
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
≠0
|
71 - 90 | 0x47-0x5A
|
GHIJKLMNOPQRSTUVWXYZ
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
0
|
91 - 96 | 0x5B-0x60
|
[\]^_`
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
97 -102 | 0x61-0x66
|
abcdef
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
0
|
≠0
|
0
|
≠0
|
103-122 | 0x67-0x7A
|
ghijklmnopqrstuvwxyz
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
0
|
≠0
|
0
|
0
|
123-126 | 0x7B-0x7E
|
{|}~
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
127 | 0x7F
|
退格符 (DEL )
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|