지금 윤성우 c보면서 입력버퍼랑 출력버퍼 공부중인데
fgets로 입력을 받을때, 원래 배열의 길이보다 더 많은 양을 입력했을때
void Clear(void)
{
while( getchar() != '\n');
}
이함수를 쓰면 입력버퍼의 뒤에부분을 버린다고하는데
while문에 실행부분도없고.. 어떻게 지우는건지 궁금합니다.
지금 윤성우 c보면서 입력버퍼랑 출력버퍼 공부중인데
fgets로 입력을 받을때, 원래 배열의 길이보다 더 많은 양을 입력했을때
void Clear(void)
{
while( getchar() != '\n');
}
이함수를 쓰면 입력버퍼의 뒤에부분을 버린다고하는데
while문에 실행부분도없고.. 어떻게 지우는건지 궁금합니다.
필요한 입력들을 받은 후 (scanf 든 getchar 든... ) 다음 입력을 받기 전에 Clear(); 를 써서 불러주면 됨.
codesaf.// 넵 그건 알겠는데 함수안에 내용이 어떻게 저 기능을 하는지가 궁금합니다 while문에 조건부분만 떡하니있고 실행 부분도없는디.. 어떻게 저렇게 되는지..
조건부분에서 저 함수 호출이 되잖냐