iscntrl() 函数用来检测一个字符是否是控制字符(Control Character)。
“控制字符”是指那些具有某种特殊功能、不会显示在屏幕上、不会占用字符位置的特殊字符。无法在屏幕上打印的字符称为控制字符。例如,退格键,转义符,换行符等。
控制字符和可打印字符是相对的,可打印字符是指那些会显示在屏幕上、会占用字符位置的“普通”字符。要检测一个字符是否是可打印字符,请使用 isprint() 函数。
iscntrl()函数检查一个字符(传递给该函数的字符)是否为指定字符。如果传递的字符是指定字符,则返回非零整数。如果不是,则返回0
此函数在ctype.h 头文件中定义。
int iscntrl(int argument);
isntrl()函数采用单个参数并返回一个整数。
当将字符作为参数传递时,将传递字符的相应ASCII值,而不是传递该字符本身。
#include <stdio.h> #include <ctype.h> int main() { char c; int result; c = 'Q'; result = iscntrl(c); printf("当%c被传递给iscntrl()时 = %d\n", c, result); c = '\n'; result = iscntrl(c); printf("当%c被传递给iscntrl()时 = %d", c, result); return 0; }
输出结果
当Q被传递给iscntrl()时 = 0 当 被传递给iscntrl()时 = 1
#include <stdio.h> #include <ctype.h> int main() { int i; printf("所有控制字符的ASCII值是 "); for (i=0; i<=127; ++i) { if (iscntrl(i)!=0){ printf("%d ", i); } } return 0; }