名前空間
変種
操作

isalnum

From cppreference.com
< c‎ | string‎ | byte
ヘッダ <ctype.h> で定義
int isalnum( int ch );

現在のCロケールで英数字として分類される文字かどうかをチェックします。デフォルトのロケールでは、次の文字が英数字です。

  • 数字 (0123456789)、
  • 大文字 (ABCDEFGHIJKLMNOPQRSTUVWXYZ)、
  • 小文字 (abcdefghijklmnopqrstuvwxyz)。

ch の値が unsigned char として表現できず、かつ EOF と等しくない場合、動作は未定義です。

目次

[編集] パラメータ

文字 - 分類する文字

[編集] 戻り値

文字が英数字の場合はゼロ以外の値、それ以外の場合は 0 を返します。

[編集]

さまざまなロケールでのisalnumの使用方法を示します(OS固有)。

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

実行結果の例

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

[編集] 参照

  • C23標準 (ISO/IEC 9899:2024)
  • 7.4.1.1 isalnum関数 (p: TBD)
  • C17標準 (ISO/IEC 9899:2018)
  • 7.4.1.1 isalnum関数 (p: 145)
  • C11標準 (ISO/IEC 9899:2011)
  • 7.4.1.1 isalnum関数 (p: 200)
  • C99標準 (ISO/IEC 9899:1999)
  • 7.4.1.1 isalnum関数 (p: 181)
  • C89/C90標準 (ISO/IEC 9899:1990)
  • 4.3.1.1 isalnum関数

[編集] 関連項目

ワイド文字が英数字であるかチェックする
(関数) [編集]
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

10進数 16進数 8進数
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
English 日本語 中文(简体) 中文(繁體)