Research/Programming
fflush(stdin)? __fpurge(stdin)!
sunnyan
2012. 2. 10. 16:19
728x90
간단한 테스트 프로그램을 짜려고 getchar()를 사용하다가 뻘짓만.... ㅡ.ㅡ
while(1)
{
print_usage();
choice = getchar();
switch(choice)
{
어쩌고...
choice2 = getchar();
저쩌고...
}
}
위와 같이 만들면 두번째 입력에서 꼭 엔터키가 먹어버리는 현상이 발생한다.
그래서, getchar() 다음에 __fpurge(stdin) 실행하면 원하는 대로 결과를 얻을 수 있다.
아래 방법은 테스트 해보지 않았음.
while (getchar() != '\n') continue;
while(1)
{
print_usage();
choice = getchar();
switch(choice)
{
어쩌고...
choice2 = getchar();
저쩌고...
}
}
위와 같이 만들면 두번째 입력에서 꼭 엔터키가 먹어버리는 현상이 발생한다.
그래서, getchar() 다음에 __fpurge(stdin) 실행하면 원하는 대로 결과를 얻을 수 있다.
아래 방법은 테스트 해보지 않았음.
while (getchar() != '\n') continue;
728x90