22020, 1/1101 회원가입  로그인  
   tfvarsity
   http://leedohyeong1.blog.me/
   리눅스에서 getch함수 만들기

http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Board&no=23480 [복사]


에..강좌까지는 아닌거 같아서, 그냥 자유게시판에 글을 써봅니다.

---------------------------------------------------------------------

제가 예전에 C언어로 간단한 예제를 연습하다,
엔터 값을 받지 않고 실시간으로 키를 입력받는
getch(); 함수를 쓰려고 ㅎㅒㅆ는데.. 함수가 없습니다, 라면서 컴파일 에러가 뜨더라구요?

찾아보니까 리눅스에는 conio헤더가 없어서, 만들어서 써야된다고 하더라구요.

그래서 검색해서 찾아봤습니다.


getch.h 소스
================
#include <stdio.h>
#include <termio.h>
int getch(void){
    int ch;
    struct termios buf, save;
    tcgetattr(0,&save);
    buf = save;
    buf.c_lflag &= ~(ICANON|ECHO);
    buf.c_cc[VMIN] = 1;
    buf.c_cc[VTIME] = 0;
    tcsetattr(0, TCSAFLUSH, &buf);
    ch = getchar();
    tcsetattr(0, TCSAFLUSH, &save);
    return ch;
}
==================

위 소스를 노트패드에 복사하신후 getch.h 로 저장합니다.

위 헤더파일을 처음에는 어떻게 include 파일에 넣나 고민을 했엇습니다.,
아직 컴퓨터에 대해서 아는게 없어서..

하지만 굳이 include 파일에 넣지않고 아무 곳에나 저장하셔두 됩니다.
저장 하신후 vi 로 헤더를 include 하실때
#include <stdio.h>
같이 < > 가 아닌
#include "getch.h"
" " 를 사용해주시면 됩니다.

<> 같은 경우 시스템 경로있는 헤더파일을 불러오는거고

"" 는 지정한경로 에서 불러오는 거라더군요,





  Hit : 20827     Date : 2012/03/27 12:05



    
     [공지]해커스쿨 이용수칙 2021/04/11 수정판 [55] 한승재 01/05 12809
22019   해커구함     k1230
10/04 13
22018   카타고 AI[1]     해킹잘하고싶다
10/01 41
22017   시스코 라우터랑 스위치 케이블 장비 질문이에요.[1]     해킹잘하고싶다
09/22 110
22016   ㅇㅅㅇ     해킹잘하고싶다
08/15 293
22015   요즘 하고 있는 거     해킹잘하고싶다
07/13 502
22014   2위 ㅇㅅㅇ     해킹잘하고싶다
07/13 439
22013   ...     해킹잘하고싶다
03/31 832
22012   ...     해킹잘하고싶다
03/25 809
22011   15년전쯤 이 사이트 보고 꿈을 정했었는데~~~[1]     ambition65
03/20 1214
22010   으앙!!![1]     해킹잘하고싶다
02/05 952
22009   오랜만~     DarkSlayer
12/11 1151
22008   해커스쿨 옛날 BGM[1]     wkfhddl4041
11/07 1256
22007   히잉...     해킹잘하고싶다
11/02 1079
22006   바둑과 장기     해킹잘하고싶다
10/30 1165
22005   나는 언제 애인이 생기나욤...     해킹잘하고싶다
10/27 1243
22004   전국 1위     해킹잘하고싶다
10/27 1188
22003   담배 ㅋㅋ[1]     해킹잘하고싶다
10/27 1191
22002   매트릭스의 파란약을 아십니까..?     해킹잘하고싶다
10/27 1146
22001   ㅇㅇ[1]     해킹잘하고싶다
10/20 1111
1 [2][3][4][5][6][7][8][9][10]..[1101]

Copyright 1999-2026 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org