C語言isprint()函數:判斷一個字元是否是可列印字元

2020-07-16 10:04:52
C語言 isprint() 函數用來檢測一個字元是否是可列印字元(Printable Character)。

“可列印字元”是指那些會顯示在螢幕上、會佔用字元位置的“普通”字元。

可列印字元和控制字元是相對的,控制字元是指那些具有某種特殊功能、不會顯示在螢幕上、不會佔用字元位置的“特殊”字元。要檢測一個字元是否是控制字元,請使用 iscntrl() 函數。

預設情況下,C語言使用的是 ASCII 編碼,可列印字元的範圍是0x20(' ') ~ 0x7e('~'),也就是除了最後一個字元0x7f (DEL)以外,0x20以後的所有字元都是可列印字元。

語法/原型:

int isprint(int c);

引數 c 是要檢測的字元。

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

【範例】輸出一個字串中的所有可列印字元。
#include <stdio.h>
#include <ctype.h>
int main ()
{
    int i=0;
    char str[]="C++ Java n C# Python t Shell Linuxn";
    while(str[i])
    {
        if(isprint(str[i])) putchar (str[i]);
        i++;
    }

    return 0;
}
執行結果:
C++ Java  C# Python  Shell Linux