개성파 블로그
C언어 getch함수로 한글 입력 받기 본문
C언어, 콘솔 화면 상에 getch함수로 한글 입력하기!
getch함수를 이용하여 한글 입력 받는 법을 이해하려면 우선 아래 링크로 getch함수 부분을 이해하기 바랍니다.
다들 아시다시피 한글과 한자, 확장키는 모두 2byte를 차지합니다. 이 부분을 알아두면 쉽게 구현할 수 있는 소스입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | #include <stdio.h> #include <conio.h> int main(void) { int ch; char str[100]; int count = 0; while(1){ ch = getch(); if( ch == '-' ) break; str[count++] = ch; if( kbhit() ){ ch = getch(); str[count++] = ch; } } str[count] = NULL; printf("%s\n", str); return 0; } |
이 소스는 한글이든 영문이든 어떤 문자든 마음껏 받습니다. 그러다가 문자 '-' 와 만나면 while문에서 빠져 나와서 지금껏 입력받은 문자를 출력하는 함수입니다.
이 소스는 아스키코드를 구하는 소스와 매우 유사합니다. 이렇듯 함수에 대해 이해하면 소스를 금방 짤 수 있습니다.
Comments