c언어 fgets 예제

우리가 가정하자, 우리는 다음과 같은 내용이 텍스트 파일 file.txt이있습니다. 이 파일은 우리의 예제 프로그램에 대한 입력으로 사용됩니다 – 여기에 표준 입력에서 읽을 fgets() 함수의 전형적인 구현입니다 : fgets() 문이 코드에서 fgets (이름, 10,stdin)로 변경되고 버퍼 크기가 10으로 업데이트된다고 가정합니다. 저장 문자입니다. 그림 1에 표시된 동일한 입력 스트림이 제공된 경우 출력은 다음과 같습니다. 이름 Anabell은 입력 및 출력 모든 깔 끔 하고 깔끔한. 그러나 이 출력은 우연입니다. fgets()는 스트림 지향이기 때문에 입력이 항상 깔끔하고 깔끔하다고 보장할 수는 없습니다. 이 예제에서는 줄 바운더리 문자를 읽고 입력을 종료합니다. 그림 2는 스트림을 읽는 방법을 업데이트합니다. 예 : 최대 문자 수가 15이고 입력 길이가 15보다 크지만 여전히 fgets()는 15 자만 읽고 인쇄한다고 가정 해 봅시다.

gets() 함수가 소멸되면 fgets()는 최상위 C 언어 텍스트 입력 함수로 유지됩니다. 파일에서 읽든 표준 입력에서 읽든 이 함수는 매우 유용하지만 몇 가지 단점이 없는 것은 아닙니다. fgets()의 작동 방식을 이해하는 열쇠는 문자를 읽는 방법을 아는 것입니다. 첫째, 형식: 줄 8의 fgets() 함수는 텍스트로 읽습니다. 텍스트는 이름 배열로 들어가며, 이 배열은 5번 선의 최대 10자로 설정됩니다. 숫자 10은 fgets()가 지정된 숫자보다 적은 9자만 읽게 되도록 지정합니다. 마지막으로 stdin은 입력을 읽는 “파일”로 지정됩니다. stdin은 표준 입력입니다. 다음 예제에서는 fgets() 함수의 사용을 보여 주십니다. fgets()는 스트림에서 크기 가작문자보다 1개 미만인 경우를 읽고 EOF 또는 줄 바선 후에 읽기가 중지되는 버퍼에 저장합니다.

줄 바호를 읽으면 버퍼에 저장됩니다. 종료 null 바이트(aqaq)는 버퍼의 마지막 문자 후에 저장됩니다. 그림 1. fgets())는 입력의 8자(7자+ null 문자)를 읽는 방법. 그림 2. fgets() 함수는 줄 바선이 발생하면 입력 읽기를 중지합니다. gets() 및 fgets()는 성공을 거두고 NULL은 오류 또는 파일 끝이 읽혀진 동안 발생하는 경우를 반환합니다. 이러한 예제와 그림이 fgets() 문이 텍스트 입력을 처리하는 방법을 더 잘 이해하는 데 도움이 되기를 바랍니다. 이 방법은 매우 일관적입니다. C 프로그래밍 언어의 범용 텍스트 입력 함수의 경우 첫 번째 공백 문자를 넘어 읽는 함수는 fgets() 함수를 사용해 보십시오. 여기에 형식은 다음과 같습니다 이 텍스트 입력을 읽기에 적용되는 fgets() 기능의 단순화 된 버전입니다 : 무서운, 아니? fgets()는 “파일 get string”에서와 같이 파일에서 텍스트를 읽는 파일 함수이기 때문입니다. 프로그래머가 밤새 도록 이야기하는 방식입니다.