C语言 isgraph() 函数用来检测一个字符是否是图形字符。
在可打印字符(isprint() 返回“真”的字符)中,绝大部分字符既会占用一个字符位置,又会在屏幕上显示出来,这些字符就是图形字符。但是有个别的字符只占用位置却不显示,在 ASCII 编码中,这样的字符只有一个,就是空格(' ')。
对于计算机来说,我们在显示器上看到的所有元素(包括图片、文字、背景、动画等)其实都是图形,计算机都需要把它们绘制出来,只不过文字和图片在操作上有很大的不同,我们在使用时一般不会将文字作为图形对待。
我们说一个字符是图形字符,就是说这个字符需要在显示器上绘制出来,而空格、换行、Tab 缩进等字符只会占用输出的位置,不需要绘制。
语法/原型:
int isgraph(int c);
参数 c 表示要检测的字符。
返回值:返回值为非 0(真)表示 c 是图形字符,返回值为 0(假)表示 c 不是图形字符。
【实例】输出一个文本文件中所有的图形字符。
#include <stdio.h> #include <ctype.h> int main () { FILE * pFile; int c; pFile=fopen ("log.txt","r"); if (pFile) { do { c = fgetc (pFile); if (isgraph(c)) putchar (c); } while (c != EOF); fclose (pFile); } }
这段代码使用 do-while 循环来遍历 demo.txt 中的所有字符,如果当前字符是图形字符,那么就输出,否则就不输出。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/22493.html