C 参考手册
- C 语言
- C 关键词
- 预处理器
- C 标准库头文件
- 类型支持
- 程序支持工具
- 变参数函数
- 错误处理
- 动态内存管理
- 日期和时间工具
- 字符串库
- 空终止字节字符串
- isalpha
- islower
- isalnum
- strcpy, strcpy_s
- isupper
- isdigit
- isxdigit
- isblank
- iscntrl
- isgraph
- isspace
- isprint
- ispunct
- tolower
- toupper
- atof
- atoi, atol, atoll
- strtol, strtoll
- strtoul, strtoull
- strtof, strtod, strtold
- strtoimax, strtoumax
- strncpy, strncpy_s
- strcat, strcat_s
- strncat, strncat_s
- strxfrm
- strlen, strnlen_s
- strcmp
- strncmp
- strcoll
- strchr
- strrchr
- strspn
- strcspn
- strpbrk
- strstr
- strtok, strtok_s
- memchr
- memcmp
- memset, memset_s
- memcpy, memcpy_s
- memmove, memmove_s
- strerror, strerror_s, strerrorlen_s
- 空终止多字节字符串
- 空终止宽字符串
- 算法
- 数值
- 文件输入/输出
- 本地化支持
- 原子操作库
- 线程支持库
- 实验性 C 标准库
- 有用的资源
- 符号索引
- 注释
isprint
检查给定的字符能否被打印,即为数字( 0123456789
)、大写字母( ABCDEFGHIJKLMNOPQRSTUVWXYZ
)、小写字母( abcdefghijklmnopqrstuvwxyz
)、标点字符( !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
)或空格之一,或任何当前 C 本地环境分类为可打印的字符。
若 ch
的值不能表示为 unsigned char 且不等于 EOF ,则行为未定义。
参数
ch | - | 要分类的字符 |
返回值
若字符能被打印则为非零,否则为零。
示例
运行此代码
#include <stdio.h> #include <ctype.h> #include <locale.h> int main(void) { unsigned char c = '\xa0'; // ISO-8859-1 的无中断空格 printf("In the default C locale, \\xa0 is %sprintable\n", isprint(c)?"":"not "); setlocale(LC_ALL, "en_GB.iso88591"); printf("In ISO-8859-1 locale, \\xa0 is %sprintable\n", isprint(c)?"":"not "); }
输出:
In the default C locale, \xa0 is not printable In ISO-8859-1 locale, \xa0 is printable
引用
- C11 standard (ISO/IEC 9899:2011):
- 7.4.1.8 The isprint function (p: 202)
- C99 standard (ISO/IEC 9899:1999):
- 7.4.1.8 The isprint function (p: 183)
- C89/C90 standard (ISO/IEC 9899:1990):
- 4.3.1.7 The isprint function
参阅
(C95) |
检查宽字符是否为打印字符 (函数) |
ASCII值 (十六进制) |
字符 |
isprint |
||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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
|