[C언어] 키보드 입력받기

반응형

[C언어] 키보드 입력받기


#include <conio.h> 선언



키보드값을 입력 받기 위해서는 반드시 필요한 선언입니다.

kbhit(), getch(), GetKeyDown()를 선언하기 위해 필요합니다.



_kbhit()


kbhit()는 키보드를 누른 여부를 판독합니다.

만약 키보드를 눌렀다면 true, 안누르면 false가 발생합니다.



hetch()


getch()는 키 입력 했을 때의 값을 입력 받습니다.



#include <stdio.h>

#include <conio.h>


#define LEFT 75

#define RIGHT 77

#define UP 72

#define DOWN 80

// 1. 매크로로 좌우상하를 설정한다.


int main(void) {

    char c;

    while (1) {

        if (_kbhit()) {


// 2. while문안에서 키보드 눌렸을 시 if문이 실행된다.

            c = _getch();


// 3. 방향키가 입력됬을 때 224 00 이 버퍼에 있다.

224부터 빼준다. 


            if (c == -32) {

// 4. -32로 입력되면

                c = _getch();

// 5. 뒤의 값 00을 판별하여 좌우상하 출력

                


switch (c) {

                case LEFT:

                    printf("좌로 이동\n");

                    break;

                case RIGHT:

                    printf("우로 이동\n");

                    break;

                case UP:

                    printf("위로 이동\n");

                    break;

                case DOWN:

                    printf("아래로 이동\n");

                    break;

                }

            }

        }

    }

    return 0;

}


반응형

댓글

Designed by JB FACTORY