无法在屏幕上显示的字符称为控制字符。例如,退格符、Escape 键、换行符等。
iscntrl()
函数用于检查(传递给函数的)字符是否为控制字符。如果传递的字符是控制字符,它会返回一个非零整数。如果不是,它返回 0
。
此函数定义在 ctype.h 头文件中。
iscntrl() 函数原型
int iscntrl(int argument);
iscntrl() 函数接受单个参数并返回一个整数。
当字符作为参数传递时,传递的是该字符对应的 ASCII 值,而不是字符本身。
示例 #1:检查控制字符
#include <stdio.h>
#include <ctype.h>
int main()
{
char c;
int result;
c = 'Q';
result = iscntrl(c);
printf("When %c is passed to iscntrl() = %d\n", c, result);
c = '\n';
result = iscntrl(c);
printf("When %c is passed to iscntrl() = %d", c, result);
return 0;
}
输出
When Q is passed to iscntrl() = 0 When is passed to iscntrl() = 1
示例 #2:打印所有控制字符的 ASCII 值
#include <stdio.h>
#include <ctype.h>
int main()
{
int i;
printf("The ASCII value of all control characters are:\n");
for (i=0; i<=127; ++i)
{
if (iscntrl(i)!=0)
printf("%d ", i);
}
return 0;
}
输出
The ASCII value of all control characters are: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 127