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;


« PREV : 1 : ··· : 40 : 41 : 42 : 43 : 44 : 45 : 46 : 47 : 48 : ··· : 537 : NEXT »