본문 바로가기
[Public] 프로그래밍/C

[C] getch 함수에서 화살표나 F1 키등등 표현

by 차출발 2009. 10. 12.
반응형

2009. 10. 12 (月)

getch() 함수를 사용하면 키보드의 키값을 아스키 코드로 받을 수 있다.

그런데 화살표나 F1 키를 눌려 보장.........

절망이다.. 2개가 출력된다 

F1 키 같은 경우는 0 + @

화살표 같은 경우는 224 + @


여기서 앞에 나오는 키는 특수 키인것이다.

보통 스캔코드 (확장키 코드)를 말하는데

이것은 2바이트로 하나는 스캔코드 하나는 아스키 코드이다.

진정 특수 키를 얻기를 원한다면.....

먼저 getch 함수로 받은 키를 224와 0인지를 구별해라

구별한다음 맞다면 다시 한번 getch 함수를 이용하여 아스키 값을 받고

그 값이 무엇인지 판별하면 된다.

한마디로 특수키가 아닌건 getch 한번 쓰고 특수키는 getch 두번 써라

getch 함수 정보는 Winapi 32 사이트를 이용하시길 바랍니다




 

'[Public] 프로그래밍 > C' 카테고리의 다른 글

[C] 구조체 비트필드  (6) 2011.07.28
[C] 가변 인자  (0) 2010.04.30
ESP 와 EBP  (0) 2010.01.25