名稱空間
變體
操作

isalpha

來自 cppreference.com
< c‎ | string‎ | byte
在標頭檔案 <ctype.h> 中定義
int isalpha( int ch );

檢查給定字元是否為字母字元,即大寫字母(ABCDEFGHIJKLMNOPQRSTUVWXYZ)或小寫字母(abcdefghijklmnopqrstuvwxyz)。

在除 "C" 之外的區域設定中,字母字元是指 isupper()islower() 返回 true 的字元,或者區域設定認為的任何其他字母字元。在任何情況下,對於此字元,iscntrl()isdigit()ispunct()isspace() 都將返回 false

如果 ch 的值不能表示為 unsigned char 且不等於 EOF,則行為未定義。

目錄

[編輯] 引數

ch - 要分類的字元

[編輯] 返回值

如果字元是字母字元,則返回非零值;否則返回零。

[編輯] 示例

演示 isalpha 在不同區域設定下的使用(與作業系統相關)。

#include <ctype.h>
#include <locale.h>
#include <stdio.h>
 
int main(void)
{
    unsigned char c = '\xdf'; // German letter ß in ISO-8859-1
 
    printf("isalpha('\\xdf') in default C locale returned %d\n", !!isalpha(c));
 
    setlocale(LC_CTYPE, "de_DE.iso88591");
    printf("isalpha('\\xdf') in ISO-8859-1 locale returned %d\n", !!isalpha(c));
}

可能的輸出

isalpha('\xdf') in default C locale returned 0
isalpha('\xdf') in ISO-8859-1 locale returned 1

[編輯] 參考資料

  • C23 標準 (ISO/IEC 9899:2024)
  • 7.4.1.2 isalpha 函式 (p: TBD)
  • C17 標準 (ISO/IEC 9899:2018)
  • 7.4.1.2 isalpha 函式 (p: 145)
  • C11 標準 (ISO/IEC 9899:2011)
  • 7.4.1.2 isalpha 函式 (p: 200-201)
  • C99 標準 (ISO/IEC 9899:1999)
  • 7.4.1.2 isalpha 函式 (p: 181-182)
  • C89/C90 標準 (ISO/IEC 9899:1990)
  • 4.3.1.2 isalpha 函式

[編輯] 另請參閱

檢查寬字元是否為字母
(函式) [編輯]
C++ 文件 用於 isalpha
ASCII 值 字元

iscntrl
iswcntrl

isprint
iswprint

isspace
iswspace

isblank
iswblank

isgraph
iswgraph

ispunct
iswpunct

isalnum
iswalnum

isalpha
iswalpha

isupper
iswupper

islower
iswlower

isdigit
iswdigit

isxdigit
iswxdigit

十進位制 十六進位制 八進位制
0–8 \x0\x8 \0\10 控制碼(NUL等) ≠0 0 0 0 0 0 0 0 0 0 0 0
9 \x9 \11 製表符(\t ≠0 0 ≠0 ≠0 0 0 0 0 0 0 0 0
10–13 \xA\xD \12\15 空白符(\n\v\f\r ≠0 0 ≠0 0 0 0 0 0 0 0 0 0
14–31 \xE\x1F \16\37 控制碼 ≠0 0 0 0 0 0 0 0 0 0 0 0
32 \x20 \40 空格 0 ≠0 ≠0 ≠0 0 0 0 0 0 0 0 0
33–47 \x21\x2F \41\57 !"#$%&'()*+,-./ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
48–57 \x30\x39 \60\71 0123456789 0 ≠0 0 0 ≠0 0 ≠0 0 0 0 ≠0 ≠0
58–64 \x3A\x40 \72\100 :;<=>?@ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
65–70 \x41\x46 \101\106 ABCDEF 0 ≠0 0 0 ≠0 0 ≠0 ≠0 ≠0 0 0 ≠0
71–90 \x47\x5A \107\132 GHIJKLMNOP
QRSTUVWXYZ
0 ≠0 0 0 ≠0 0 ≠0 ≠0 ≠0 0 0 0
91–96 \x5B\x60 \133\140 [\]^_` 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
97–102 \x61\x66 \141\146 abcdef 0 ≠0 0 0 ≠0 0 ≠0 ≠0 0 ≠0 0 ≠0
103–122 \x67\x7A \147\172 ghijklmnop
qrstuvwxyz
0 ≠0 0 0 ≠0 0 ≠0 ≠0 0 ≠0 0 0
123–126 \x7B\x7E \173\176 {|}~ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
127 \x7F \177 退格字元(DEL ≠0 0 0 0 0 0 0 0 0 0 0 0