FREAD(3) - FreeBSD 라이브러리 함수 설명서

이름

fread, fread_unlocked, fwrite, fwrite_unlocked - 바이너리 스트림 입력/출력

라이브러리

표준 C 라이브러리 (libc, -lc)

개요

#include <stdio.h>

size_t fread(void * restrict ptr, size_t size, size_t nmemb, FILE * restrict stream);

size_t fread_unlocked(void * restrict ptr, size_t size, size_t nmemb, FILE * restrict stream);

size_t fwrite(const void * restrict ptr, size_t size, size_t nmemb, FILE * restrict stream);

size_t fwrite_unlocked(const void * restrict ptr, size_t size, size_t nmemb, FILE * restrict stream);

설명

fread() 함수는 stream이 가리키는 스트림으로부터, 각 size 바이트 길이의, nmemb개의 항목을 읽어, ptr이 지정한 위치에 저장합니다.

fwrite() 함수는 각 size 바이트 길이의 nmemb개의 항목을 ptr이 지정한 위치로부터 가져와 stream이 가리키는 스트림에 기록합니다.

fread_unlocked()fwrite_unlocked() 함수는 각각 fread()fwrite()와 동일하지만 호출자가 호출하기 전에 flockfile(3)로 스트림을 잠글 책임이 있다는 점만 다릅니다. 이러한 함수는 스트림을 잠그는 비용을 피하고 여러 스레드가 동일한 스트림에서 작동할 때 경합을 방지하는 데 사용될 수 있습니다.

반환 값

fread()fwrite() 함수는 읽거나 쓴 바이트 수만큼 스트림에 대한 파일 위치 표시기를 전진시킵니다. 읽거나 쓴 항목 수를 반환합니다. 오류가 발생하거나 파일 끝에 도달하면 반환 값은 부족한 항목 수(또는 0)입니다.

fread() 함수는 파일 끝과 오류를 구분하지 않으며 호출자는 feof(3) 및 ferror(3)를 사용하여 무엇이 발생했는지 확인해야 합니다. fwrite() 함수는 쓰기 오류가 발생한 경우에만 nmemb보다 적은 값을 반환합니다.

함께 보기

read(2), write(2)

표준

fread()fwrite() 함수는 ISO/IEC 9899:1990(“ISO C90”)을 준수합니다.

FreeBSD 13.1-RELEASE-p3 - January 23, 2020

저작권 1994-2023 The FreeBSD Project.