函式
<cctype>

iscntrl

int iscntrl ( int c );
檢查字元是否為控制字元
檢查 c 是否為控制字元

控制字元是指在顯示器上不佔有列印位置的字元(這是可列印字元的反義,由 isprint 檢查)。

對於標準 ASCII 字元集(由“C”區域設定使用),控制字元是 ASCII 碼 0x00 (NUL) 到 0x1f (US) 之間的字元,再加上 0x7f (DEL)。

有關不同ctype函式為標準 ANSII 字元集中的每個字元返回的值,請參閱 <cctype> 標頭檔案的參考。

在 C++ 中,標題 <locale> 中存在此函式的區域設定特定模板版本(iscntrl)。

引數

c
要檢查的字元,轉型為int型別,或EOF.

返回值

如果 c 確實是空白字元,則返回一個非零值(即true)如果 c 確實是一個控制字元。零(即false)。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/* iscntrl example */
#include <stdio.h>
#include <ctype.h>
int main ()
{
  int i=0;
  char str[]="first line \n second line \n";
  while (!iscntrl(str[i]))
  {
    putchar (str[i]);
    i++;
  }
  return 0;
}


此程式碼逐個字元列印字串,直到遇到中斷 while 迴圈的控制字元為止。在本例中,只有第一行會被列印,因為該行以'\n'結尾,這是一個控制字元(ASCII 碼 0x0a)。

另見