c언어

20140404 - 문자열 입출력 함수, 표준입출력과 버퍼

Owen.K 2014. 4. 4. 17:23
문자열 단위 입출력 함수

puts - 문자열 그대로 출력해낸다. 함수가 호출되면 문자열 출력 후 자동으로 개행이 이뤄진다.


fputs - 함수가 호출되면 문자열 출력 후 자동으로 개행이 이뤄지지 않는다.


gets - 문자열을 입력한다. 할당된 배열의 길이를 넘어서면 오류가 발생. 보안에 매우 취약하다.


fgets - stdin으로부터 문자열을 입력 받아서 배열 str에 저장하되, sizeof(str)의 길이만큼 저장함.

    문자열을 입력 받으면 문자열의 끝에 자동으로 널 문자가 추가된다.







표준 입출력과 버퍼


표준 입출력 기반의 버퍼

운영체제가 제공하는 '메모리 버퍼'를 중간에 통과하게 된다. 

메모리 버퍼는 데이터를 임시로 모아두는 메모리 공간.

입력버퍼의 비워짐은 데이터의 소멸을 의미한다.


fflush함수 - 출력버퍼에 저장된 데이터가 버퍼를 떠나서 목적지로 이동. 강제 입출력