int isascii(signed char ch) { if((ch >= 0) && (ch <= 127))return 1; else return 0; } void main(void) { char ch; printf("한 문자를 입력해 주세요 : "); scanf("%c", &ch); if(isascii(ch) != 0) { printf("ascii 문자입니다.\n"); } else { printf("ascii 문자가 아닙니다.\n"); } }
프로그램 실행화면
isascii()함수를 구현해 보았다. 다른 문자 관리 함수처럼 아스키 문자라면 0이 아닌 값을 반환하고 아스키 문자가 아니라면 0을 반환하도록 하였다.
ascii 문자인지 아닌지 구분하는 방법은 간단하다. 0~127의 값이라면 아스키 문자인 것이다 최상의 비트 MSB가 1인 것을 찾아도 된다.