fflush(stdin)? __fpurge(stdin)!

Posted 2012/02/10 16:19
간단한 테스트 프로그램을 짜려고 getchar()를 사용하다가 뻘짓만.... ㅡ.ㅡ

while(1)
{
   print_usage();
   choice = getchar();
   switch(choice)
   {
    어쩌고...
       choice2 = getchar();
    저쩌고...
   }
}

위와 같이 만들면 두번째 입력에서 꼭 엔터키가 먹어버리는 현상이 발생한다.

그래서, getchar() 다음에 __fpurge(stdin) 실행하면 원하는 대로 결과를 얻을 수 있다.

아래 방법은 테스트 해보지 않았음.
while (getchar() != '\n') continue;


'Research > Programming' 카테고리의 다른 글

fflush(stdin)? __fpurge(stdin)!  (0) 2012/02/10
sqlite 파일, 테이블, 쿼리, 업데이트  (0) 2011/05/18
pthread_cond_wait  (0) 2011/05/11
Worker Thread in Qt using Signals & Slots  (0) 2011/04/12
An Introduction to SQLite  (0) 2010/02/01
Qt, undefined reference to `vtable for  (1) 2010/01/26
« PREV : 1 : ... 2 : 3 : 4 : 5 : 6 : 7 : 8 : 9 : 10 : ... 521 : NEXT »