stdin과 fflush문제 어떻게 해결해야 할까요?
글쓴이: athxue / 작성시간: 목, 2009/07/09 - 5:18오후
지금 작성중인 코드중에 scanf와 fgets가 많이 사용되고 있습니다. 근데 어느 경우는 이 둘 함수를 그냥 무시하고 지나쳐버리는데 이전 입력 함수에서 남아있던 \n이 해당 함수를 그냥 지나치게 만드는것 같습니다. fflush(stdin)같은 경우는 표준함수가 아니니 제쳐두고 KLDP에서 검색하여 나온 다음코드
Quote:
Int32 ch;
while((ch=getchar()) != EOF && ch != '\n');
는 현재 버퍼에 내용이 없을때 입력을 받기위해 멈추게 되어있어 난감하네요. 모든 경우를 다 테스트 해서 저 위의 코드를 넣을수도 없고.. 좋은 해결책이 없을까요?
Forums:
질문에 대한 답은
질문에 대한 답은 아니지만...
scanf()는 문제가 발생할 가능성이 크기 때문에, fgets()와 sscanf()를 쓰도록 바꾸기 바랍니다.
--
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://www.cinsk.org/cfaqs/
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://cinsk.github.io/cfaqs/
댓글 달기