C 库 - iscntrl() 函数



C 的ctypeiscntrl()函数用于检查给定字符是否为控制字符。控制字符是非打印字符,用于控制设备(如打印机或显示器)的操作,包括换行符、制表符等字符。

语法

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

int iscntrl(int ch);

参数

此函数接受单个参数:

  • ch − 这是要检查的字符,作为整数传递。其值应可表示为无符号字符或等于 EOF。

返回值

如果字符是控制字符,则iscntrl()函数返回非零值(true)。否则,它返回零(false)。

示例 1:检查换行符

此示例检查换行符 ('\n') 是否为控制字符。该函数返回 true,确认它是。

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

int main() {
   char ch = '\n'; // newline character

   if (iscntrl(ch)) {
      printf("The character '\\n' is a control character.\n");
   } else {
      printf("The character '\\n' is not a control character.\n");
   }
   return 0;
}

输出

以上代码产生以下结果:

The character '\n' is a control character.

示例 2:检查可打印字符

在这里,我们检查字符 'A' 是否为控制字符。该函数返回 false,表明 'A' 不是控制字符。

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

int main() {
   char ch = 'A'; // printable character

   if (iscntrl(ch)) {
      printf("The character 'A' is a control character.\n");
   } else {
      printf("The character 'A' is not a control character.\n");
   }
   return 0;
}

输出

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

The character 'A' is not a control character.
广告