ctype, isalpha, isupper, islower, isdigit, isxdigit, isalnum, isspace, ispunct, isprint, isgraph, iscntrl 또는 isascii 서브루틴

용도

문자를 분류합니다.

라이브러리

표준 문자 라이브러리libc.a

구문

#include <ctype.h> 
int isalpha ( Character)
int Character;
int isupper (Character)
int Character;
int islower (Character)
int Character;
int isdigit (Character)
int Character;
int isxdigit (Character)
int Character;
int isalnum (Character)
int Character;
int isspace (Character)
int Character;
int ispunct (Character)
int Character;
int isprint (Character)
int Character;
int isgraph (Character)
int Character;
int iscntrl (Character)
int Character;
int isascii (Character)
int Character;

설명

Ctype 서브루틴은 테이블에 지정된 문자 코딩된 정수 값을 분류합니다. 이러한 각 서브루틴은 True인 경우 0이 아닌 값을 반환하고 False인 경우 0을 반환합니다.

참고: ctype 서브루틴은 단일 바이트 값(0~255)으로 표현할 수 있는 문자 데이터에만 사용해야 합니다. 다중 바이트 로캘 데이터에 ctype 서브루틴을 사용하려고 하면 일관성 없는 결과가 나올 수 있습니다. 넓은 문자 분류 루틴(예: iswprint, iswlower 등) 는 멀티바이트 문자 데이터를 처리할 때 사용해야 합니다.

로케일 종속 문자 테스트

다음 서브루틴은 현재 로캘에 대한 문자 클래스 정의에 따라 0이 아닌 값(True)을 반환합니다.

항목 설명
isalnum 이알파 또는 이숫자 서브루틴이 0이 아닌 문자를 반환하는 모든 문자에 대해 0이 아닌 값을 반환합니다. Isalnum 서브루틴은 문자가 알파벳 클래스인지 숫자 클래스인지 테스트합니다.
isalpha Isupper 또는 islower 서브루틴이 0이 아닌 문자를 반환하는 모든 문자에 대해 0이 아닌 값을 반환합니다. 또한 isalpha 서브루틴은 현재 로캘에서 알파벳 문자로 정의된 문자에 대해 0이 아닌 값을 반환하거나 iscntrl, isdigit, ispunct 또는 isspace 서브루틴 중 어느 것도 0이 아닌 값을 반환하지 않는 문자에 대해 0이 아닌 값을 반환합니다. Isalpha 서브루틴은 캐릭터가 알파 클래스인지 여부를 테스트합니다.
isupper 모든 대문자[A~Z]에 대해 0이 아닌 값을 반환합니다. 또한 isupper 서브루틴은 현재 로캘에서 대문자로 정의된 모든 문자에 대해 0이 아닌 값을 반환합니다. Isupper 서브루틴은 캐릭터가 상류층인지 여부를 테스트합니다.
islower 소문자[a~z]에 대해 0이 아닌 값을 반환합니다. 또한 islower 서브루틴은 현재 로캘에서 소문자로 정의된 모든 문자에 대해 0이 아닌 값을 반환합니다. Islower 서브루틴은 캐릭터가 하위 클래스인지 여부를 테스트합니다.
isspace 모든 공백 문자(공백, 서식 피드, 새 줄, 캐리지 리턴, 가로 탭 또는 세로 탭)에 대해 0이 아닌 값을 반환합니다. Isspace 서브루틴은 문자가 스페이스 클래스인지 여부를 테스트합니다.
ispunct Isprint 서브루틴이 0이 아닌 문자를 반환하는 모든 문자에 대해 0이 아닌 값을 반환합니다(공백 문자 및 isalnum 서브루틴이 0이 아닌 값을 반환하는 모든 문자 제외). 또한 ispunct 서브루틴은 구두점 문자로 지정된 로캘 정의 문자에 대해 0이 아닌 값을 반환합니다. Ispunct 서브루틴은 문자가 punct 클래스인지 여부를 테스트합니다.
isprint 모든 인쇄 문자에 대해 0이 아닌 값을 반환합니다. 인쇄 문자로 지정된 로캘 정의 문자에 대해 0이 아닌 값을 반환합니다. 이 루틴은 문자가 인쇄 클래스인지 여부를 테스트합니다.
isgraph 공백 문자를 제외하고 isprint 문자가 0이 아닌 문자를 반환하는 모든 문자에 대해 0이 아닌 값을 반환합니다. Isgraph 서브루틴은 문자가 그래프 클래스인지 여부를 테스트합니다.
iscntrl Isprint 서브루틴이 거짓(0) 값을 반환하는 모든 문자와 현재 로캘에서 제어 문자로 지정된 모든 문자에 대해 0이 아닌 값을 반환합니다. C 로캘의 경우 제어 문자는 ASCII 삭제 문자(0127 또는 0x7F) 또는 일반 제어 문자(040 또는 0x20 미만)입니다. Iscntrl 서브루틴은 문자가 cntrl 클래스인지 여부를 테스트합니다.

로케일 독립 문자 테스트

다음 서브루틴은 로캘에 관계없이 동일한 문자에 대해 0이 아닌 값을 반환합니다:

항목 설명
isdigit 문자는 [0~9] 범위의 숫자입니다.
isxdigit 문자는 [0~9], [A~F] 또는 [a~f] 범위의 16진수입니다.
isascii 문자는 [0 ~ 0x7F] 범위의 값을 가진 ASCII 문자입니다.

매개변수

항목 설명
문자 테스트할 문자(정수 값)를 나타냅니다.

리턴 코드

Character 매개변수로 지정된 문자가 선택한 문자 클래스의 멤버인 경우 ctype 서브루틴은 0이 아닌 값(True)을 반환하고, 그렇지 않으면 0(False)을 반환합니다.