C언어
-
C] fflush()Archive/C 2009. 9. 20. 21:29
fflush( stdin ); scanf 를 통하여 abc def 라는 입력을 할 경우, abc 끝에는 문자열의 끝을 의미하는 null character인 ' \0' 이 삽입된다. 따라서 def 대신 '\0'이 입력되어 버그가 발생 "fflush는 버퍼내용을 지울때 사용된다!"라고 생각 하고 있었다. fflush 란 버퍼의 내용을 지운다기 보다는 비운다는게 맞는 표현 같다. 일단 버퍼부터 말하겠다. 버퍼란 입력 하거나 출력할때 사용되는데 입력 할때마다 처리하는것 보다는 한번에 모와서 일을 하는게 능률적이기 때문에 그 저장공간을 따로 두어 사용하게 된다. 그 공간을 버퍼라 한다. 프로그래밍을 할 때 입력버퍼와 출력버퍼가 있는데 이 입력버퍼 와 출력버퍼를 비울 때에 fflush란 함수가 사용된다 근데 이 함..
-
-
-
-
-
-