Namespaces
Variants

isalnum

From ko.cppreference.net
< c ‎ | string ‎ | byte
헤더 파일에 정의됨 <ctype.h>
int isalnum ( int ch ) ;

현재 C 로캘에서 분류된 알파벳 숫자 문자인지 확인합니다. 기본 로캘에서 다음 문자들은 알파벳 숫자 문자입니다:

  • 숫자 ( 0123456789 ),
  • 대문자 ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ),
  • 소문자 ( abcdefghijklmnopqrstuvwxyz ).

ch 값이 unsigned char 로 표현 가능하지 않고 EOF 와 같지 않으면 동작은 정의되지 않습니다.

목차

매개변수

ch - 분류할 문자

반환값

문자가 알파벳 숫자 문자인 경우 0이 아닌 값, ​ 0 ​ 그 외의 경우.

예제

다양한 로케일(OS별)에서 isalnum 사용법을 보여줍니다.

#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 The isalnum function (p: 181)
  • C89/C90 표준 (ISO/IEC 9899:1990):
  • 4.3.1.1 isalnum 함수

참고 항목

와이드 문자가 영숫자인지 확인합니다
(함수)
**참고:** HTML 태그, 속성, ` ` 태그 내부의 텍스트는 번역하지 않았으며, C++ 관련 용어도 그대로 유지했습니다. 표의 숫자 범위와 기호만 한국어로 표기했습니다.
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

십진법 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 – \x7E {|}~ 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