给定一个字符,我们需要找到它是否可打印。我们还需要找出它是否是控制角色。如果字符占据打印空间,则称为可打印字符。
对于标准ASCII字符集(由“C”语言环境使用),控制字符是ASCII代码0x00(NUL)和0x1f(US)之间的字符加上0x7f(DEL)。

例子:

输入:a
输出:a是可打印字符
        a不是控制角色
        
输入:\ r \ n
输出:不可打印字符
         是控制角色

为了找到可打印字符和控制字符之间的区别,我们可以使用一些预定义的函数,这些函数在“ctype.h”头文件中声明。

sprint()函数检查字符是否是可打印字符。isprint()函数以整数的形式获取单个参数,并返回int类型的值。我们可以在内部传递一个char类型参数,它们通过指定ASCII值充当int。

所述iscntrl判断()函数是用来检查一个字符是否是一个控制字符或没有。iscntrl()函数也接受一个参数并返回一个整数。

// C program to illustrate isprint() and iscntrl() functions.
#include <stdio.h>
#include <ctype.h>
int main(void)
{
    char ch = 'a';
    if (isprint(ch)) {
        printf("%c is printable character\n", ch);
    } else {
        printf("%c is not printable character\n", ch);
    }
    if (iscntrl(ch)) {
        printf("%c is control character\n", ch);
    } else {
        printf("%c is not control character", ch);
    }
    return (0);
}

输出:

a是可打印的字符
a不是控制角色
区分C中的可打印和控制字符?-IDC帮帮忙