[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