原文:http://www.cplusplus.com/reference/clibrary/cctype/isprint/
int isprint ( int c );
检查一个字符是否可打印
检查参数c是否是一个可打印字符。任何一个不是控制字符的字符都是一个可打印字符。
对于标准的ASCII字符表来说,控制字符是指那些ASCII 码在0x00 (NUL) 和 0x1f (US)之间的字符,加上0x7f (DEL)。因此,除下这些控制字符,其他的字符都是可打印字符。有些特定平台上的特定编译器可能会把扩展字符( 0x7f以上)定义为新增的控制字符。
除了空白字符 (例如 ' ')外,isgraph和isprint在相同条件下,返回值是一样的。对于空白字符,isprint检查的时候返回true,而isgraph检查的时候返回false。
想要得到不同的ctype函数在处理每个标准ANSII字符返回值的详细图表,请阅读参考<cctype>头文件。
在C++语言中,一个特定于语言环境模版版本的isprint函数存在于头文件<locale>。
参数
c
待检查字符,被转换成一个整数或者EOF结束符。
返回值
如果事实上c是一个可打印字符,返回值为非0(例如:true)。否则,返回值为0 (例如:false)。
实例
/* isprint example */ #include <stdio.h> #include <ctype.h> int main () { int i=0; char str[]="first line \n second line \n"; while (isprint(str[i])) { putchar (str[i]); i++; } return 0; }
这段代码会逐个字符打印直到检查到一个字符是不可打印的字符,然后退出while循环。在这里,仅仅第一行会被打印出来,因为第一行末尾的结束符('\n')是一个不可以打印的字符。
请参阅
iscntrl 检查字符是否是控制字符(函数)
isspace 检测字符是否为空白字符(函数)
isalnum 检查字符是否是字母或者数字(函数)
时间: 2024-10-26 05:13:50