C 语言 isgraph() 函数

17 Mar 2025 | 5 分钟阅读

本主题将讨论 C 编程语言中的 isgraph() 函数。C 编程中的 isgraph() 函数用于检查一个字符是否为图形字符。

图形字符是指那些具有图形表示形式,用于在屏幕上显示或打印的字符。这意味着图形字符会打印出传入的字符,但不会显示空白字符,如空格(' ')、换行符('\n')和制表符('\t'),这些不被视为 isgraph() 字符。

isgraph() function in C

isgraph() 函数在 ctype.h 头文件中声明。如果传入的字符是图形字符,isgraph() 函数返回一个非零值。如果给定的字符不是图形或可打印字符,则函数返回零。

例如,假设我们向 isgraph 函数输入字符 'u'、6、/,然后函数会检查输入字符是否为图形字符。这里我们传入了不同的字符,它们都会返回一个非零值。同样,如果我们向 isgraph() 函数传入空白字符(' '),它将返回值零。

isgraph() 函数的语法

以下是 C 语言中 isgraph() 函数的语法。

这里,isgraph() 函数包含一个参数,用于检查有效的图形字符。

参数

C - 'c' 变量表示在 isgraph() 函数中传入的字符。(注:原文为isdigit(),已更正为isgraph())

返回值

isgraph() 函数判断传入的字符是否为图形字符,如果是,则函数返回一个非零值,否则返回零。

示例 1:检查传入字符是否为图形字符的程序

让我们编写一个简单的 C 语言程序,来检查给定的字符是否为图形字符。

输出

It is a graphical character.
It is not a graphical character.
It is a graphical character.
It is not a graphical character.
It is a graphical character.
It is not a graphical character.

示例 2:从用户获取输入以验证图形字符的程序

让我们编写一个 C 程序,使用 isgraph() 函数输入并验证图形字符。

输出

Enter the graphical character: 5
'5' is a graphical character.

在上面的程序中,我们从用户处输入 5,以检查传入的字符是否为图形字符。如果 5 是一个图形字符,它会显示“5 是一个图形字符”。所以,我们使用 isgraph() 函数,将 5 作为参数来验证图形字符。

第二次执行

Enter the graphical character: *
'*' is a graphical character.

这里,字符 '*' 作为参数传递给 isgraph() 函数,用于打印图形字符。如果给定的字符是图形字符,函数会显示“* 是一个图形字符”。

同样,当我们将空白字符('')或换行符(\n)传递给 isgraph() 函数以验证图形字符时。在这里,'' 空白或换行符不是图形字符,所以 isgraph() 返回“它不是一个图形字符”。

示例 3:打印 C 语言中所有图形字符的程序

让我们编写一个简单的程序,来检查并显示 C 编程语言中所有存在的图形字符。

输出

! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ 
 There are total 94 valid graphical characters.

在上面的程序中,我们使用 isgraph() 函数来打印 C 库中所有可用的图形字符。为此,我们声明并初始化了整型变量 'i' 和 'count' 为 0,用于打印和计数 C 中的有效图形字符。while 循环会持续迭代并打印图形字符,直到 (i < 257) 条件不满足为止。最后,它会打印出有效图形字符的总数。