본문 바로가기

카테고리 없음

[C언어] isascii() 함수 구현하기

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인 것을 찾아도 된다.