C 库 - isprint() 函数



C 的ctypeisprint()函数检查传递的字符是否可打印。可打印字符是指非控制字符的字符。可打印字符包括所有可见字符(字母、数字、标点符号和符号)以及空格字符。

此函数在<ctype.h>头文件中声明。

语法

以下是C库isprint()函数的语法:

int isprint(int c);

参数

此函数接受单个参数:

  • c − 这是要检查的字符,作为int类型传递。虽然参数类型为int,但它通常表示一个unsigned char值或EOF。

返回值

如果字符是可打印字符,则返回非零值(真);如果字符不是可打印字符,则返回零(假)。

示例 1:检查字母数字和空格

此示例检查字符'A'、空格(' ')和制表符('\t')是否可打印。'A'和空格是可打印的,但制表符不是。

#include <stdio.h>
#include <ctype.h>

int main() {
   char c1 = 'A';
   char c2 = ' ';
   char c3 = '\t';

   printf("isprint('%c'): %d\n", c1, isprint(c1));
   printf("isprint('%c'): %d\n", c2, isprint(c2));
   printf("isprint('%c'): %d\n", c3, isprint(c3));

   return 0;
}

输出

以上代码产生以下结果:

isprint('A'): 16384
isprint(' '): 16384
isprint('	'): 0

示例 2:检查扩展ASCII字符

此示例检查扩展ASCII字符。一些扩展ASCII字符(例如,176和255)是可打印的,而其他字符(例如,128)则不是。

#include <stdio.h>
#include <ctype.h>

int main() {
   char c1 = 128; // Extended ASCII character
   char c2 = 176; // Extended ASCII character
   char c3 = 255; // Extended ASCII character

   printf("isprint('%c'): %d\n", c1, isprint(c1));
   printf("isprint('%c'): %d\n", c2, isprint(c2));
   printf("isprint('%c'): %d\n", c3, isprint(c3));

   return 0;
}

输出

执行上述代码后,我们将得到以下结果:

isprint('PAD'): 0
isprint('°'): 1
isprint('ÿ'): 1
广告
© . All rights reserved.