C語言iscntrl()函數:判斷一個字元是否為控制字元

2020-07-16 10:04:51
C語言 iscntrl() 函數用來判斷一個字元是否為控制字元。

“控制字元”是指那些具有某種特殊功能、不會顯示在螢幕上、不會佔用字元位置的特殊字元。預設情況下,C語言使用的是 ASCII 編碼,控制字元的範圍是0x00 (NUL) ~ 0x1f (US),再加上最後的0x7f (DEL),一共 33 個。

控制字元和可列印字元是相對的,可列印字元是指那些會顯示在螢幕上、會佔用字元位置的“普通”字元。要檢測一個字元是否是可列印字元,請使用 isprint() 函數。

標頭檔案:ctype.h

語法/原型:

int iscntrl(int c);

引數 c 是要檢測的字元或者 ASCII 碼。

返回值:返回值為非 0(真)表示 c 是控制字元,返回值為 0(假)表示 c 不是控制字元。

【範例】使用 while 迴圈逐個輸出字串中的字元,一旦遇到控制字元就停止迴圈,不再列印。
#include <stdio.h>
#include <ctype.h>
int main ()
{
    int i=0;
    char str[]="C++ Java n Python C# n";
    while (!iscntrl(str[i]))
    {
        putchar (str[i]);
        i++;
    }
    return 0;
}
執行結果:
C++ Java