C++官方参考链接:https://cplusplus.com/reference/cctype/iscntrl/
字符分类函数
它们检查作为形参传递的字符是否属于某个类别:
函数
iscntrl
int iscntrl ( int c );
检查字符是否为控制字符
检查c是否为控制字符。
控制字符是在显示器上不占据打印位置的字符(这与可打印字符相反,用isprint返回true的字符)。
对于标准ASCII字符集(由“C”语言环境使用),控制字符是ASCII码0x00(NUL)和0x1f(US)之间的字符,加上0x7f(DEL)。
有关不同的ctype函数为标准ASCII字符集的每个字符返回什么的详细图表,请参阅头文件<cctype>的参考资料。
在C++中,此函数 (iscntrl)的特定于区域设置的模板版本存在于头文件
形参
c
要检查的字符,转换为int值或EOF。
返回值
如果c确实是一个控制字符,一个不同于0的值(即true)。否则为0(即为false)。
用例
/* iscntrl example */
#include
#include
int main ()
{
int i=0;
char str[]="first line \n second line \n";
while (!iscntrl(str[i]))
{
putchar (str[i]);
i++;
}
return 0;
}
此代码逐字符输出字符串,直到遇到结束while循环的控制字符。在本例中,只打印first line ,因为该行以'\n'结尾,这是一个控制字符(ASCII码0x0A)。