|
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
|