C语言判断字符是否为可打印字符的方法
C语言isprint()函数:判断字符是否为可打印字符
头文件:
#include<ctype.h>
isprint()函数用来判断一个字符是否为打印字符,其原型为:
intisprint(intc);
【参数】c为需要被检测的字符。
【返回值】如果c为可打印字符,将返回非0值,否则返回0。
可打印字符的ASCII码值大于0x1f(除了0x7f(DEL)),这些字符可以显示到屏幕上,让我们看到;不能显示在屏幕上,我们看不到的,叫控制字符,ASCII码值为0x00~0x1f,再加上0x7f(DEL)。检测控制字符请使用isiscntrl()函数。
注意,此函数为宏定义,非真正函数。
【实例】判断str字符串中哪些为可打印字符包含空格字符。
#include<ctype.h> main(){ charstr[]="a5@;"; inti; for(i=0;str[i]!=0;i++) if(isprint(str[i])) printf("str[%d]isprintablecharacter:%d\n",i,str[i]); }
输出结果:
str[0]isprintablecharacter:a str[1]isprintablecharacter:5 str[2]isprintablecharacter: str[3]isprintablecharacter:@ str[4]isprintablecharacter:;
C语言isgraph()函数:判断字符是否为除空格以外的可打印字符
头文件:
#include<ctype.h>
isgraph()用来判断一个字符是否为除空格以外的可打印字符,其原型为:
intisgraph(intc);
【参数】c为需要检测的字符。
【返回值】如果c所对应的ASCII码可打印,且为非空格字符,则返回非0值,否则返回0。
注意,isgraph()为宏定义,非真正函数。
【范例】判断str字符串中哪些为可打印字符。
#include<ctype.h> main(){ charstr[]="a5@;"; inti; for(i=0;str[i]!=0;i++) if(isgraph(str[i])) printf("str[%d]isprintablecharacter:%d\n",i,str[i]); }
输出结果:
str[0]isprintablecharacter:a str[1]isprintablecharacter:5 str[3]isprintablecharacter:@ str[4]isprintablecharacter:;