티스토리 뷰
보통 getchar() 함수를 이용해서 문자를 입력받는다. 문제는 이게 엔터를 누르기 전에는 입력이 바로 되질 않는다는 것이다. 보통은 문제가 안 되는데 현재 콘솔 게임을 만들고 있다보니까 이게 문제가 되었다. 찾아보니 단순히 C 레벨에서의 문제가 아니라 터미널과의 깊은 연관성을 가진 문제라나....
어쨌든 문제 해결은 해야하니까 찾아보니까 어떤 용자가 함수를 공유해뒀다. 링크
#include <stdio.h>
#include <termios.h>
#include <unistd.h>
int mygetch() {
struct termios oldt, newt;
int ch;
tcgetattr( STDIN_FILENO, &oldt );
newt = oldt;
newt.c_lflag &= ~( ICANON | ECHO );
tcsetattr( STDIN_FILENO, TCSANOW, &newt );
ch = getchar();
tcsetattr( STDIN_FILENO, TCSANOW, &oldt );
return ch;
}
'프로그래밍 > 잡탕' 카테고리의 다른 글
[Octave] Gradient Descent Multi feature (0) | 2015.04.18 |
---|---|
[AWS] Elastic Beanstalk로 Flask 프로젝트 Deploy 하기 (0) | 2015.04.09 |
[Python, Flask] 암호를 안전하게 저장하기 (1) | 2015.02.26 |
[Ruby] grape 위에서 paperclip으로 aws s3에 첨부 파일 저장하기 (0) | 2014.12.27 |
SQLAlchemy에서 데이터 변경사항 commit 되지 않도록 하기 (0) | 2014.12.21 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday