iscntrl
|
在标头
<ctype.h> 定义 |
||
|
int iscntrl( int ch );
|
||
检查给定字符是否为控制字符,即编码 0x00-0x1F 及 0x7F 。
若 ch 的值不能表示为 unsigned char 且不等于 EOF ,则行为未定义。
参数
| ch | - | 要分类的字符 |
返回值
若字符为控制字符则为非零,否则为零。
示例
#include <stdio.h> #include <ctype.h> #include <locale.h> int main(void) { unsigned char c = '\x94'; // ISO-8859-1 的控制码 CCH printf("In the default C locale, \\x94 is %sa control character\n", iscntrl(c) ? "" : "not " ); setlocale(LC_ALL, "en_GB.iso88591"); printf("In ISO-8859-1 locale, \\x94 is %sa control character\n", iscntrl(c) ? "" : "not " ); }
输出:
In the default C locale, \x94 is not a control character In ISO-8859-1 locale, \x94 is a control character
引用
- C11 标准(ISO/IEC 9899:2011):
-
- 7.4.1.4 The iscntrl function (第 201 页)
- C99 标准(ISO/IEC 9899:1999):
-
- 7.4.1.4 The iscntrl function (第 182 页)
- C89/C90 标准(ISO/IEC 9899:1990):
-
- 4.3.1.3 The iscntrl function
参阅
|
(C95)
|
检查宽字符是否为控制字符 (函数) |
| ASCII值 (十六进制) |
字符 |
iscntrl |
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 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 |