C语言 isprint() 函数用来检测一个字符是否是可打印字符(Printable Character)。
“可打印字符”是指那些会显示在屏幕上、会占用字符位置的“普通”字符。
可打印字符和控制字符是相对的,控制字符是指那些具有某种特殊功能、不会显示在屏幕上、不会占用字符位置的“特殊”字符。要检测一个字符是否是控制字符,请使用 iscntrl() 函数。
默认情况下,C语言使用的是 ASCII 编码,可打印字符的范围是0x20(' ') ~ 0x7e('~'),也就是除了最后一个字符0x7f (DEL)以外,0x20以后的所有字符都是可打印字符。
语法/原型:
参数 c 是要检测的字符。
返回值:返回值为非 0(真)表示 c 是可打印字符,返回值为 0(假)表示 c 不是可打印字符。
【实例】输出一个字符串中的所有可打印字符。
#include <stdio.h>
#include <ctype.h>
int main ()
{
int i=0;
char str[]="C++ Java \n C# Python \t Shell Linux\n";
while(str[i])
{
if(isprint(str[i])) putchar (str[i]);
i++;
}
return 0;
}
运行结果:C++ Java C# Python Shell Linux