Computer Security

#8 저수준 파일 문자/문자열 읽고 쓰기 본문

리눅스 시스템 프로그래밍

#8 저수준 파일 문자/문자열 읽고 쓰기

쿠리 Kuri 2022. 9. 13. 18:30
반응형

파일에 쓰기 - formatted

 

int dprintf(int fd, const char *format, ...);

 

파라미터

 

- fd : 파일 디스크립터

- format : 출력 포맷

- ... : 가변 arguments

 

 

 

반환 값

 

- 성공시 쓰여진 바이트 값

- 실패시 음수

 

 

 

 

 

 


파일에 쓰기 - byte stream

ssize_t write(int fd, const void *buf, size_t count);
ssize_t pwrite(int fd, const void *buf, size_t count, off_t offset);

 

 

파라미터

- fd : 파일 디스크립터

 

- buf : 버퍼 포인터

 

- count : 저장할 사이즈(바이트)

 

- offset : 저장할 위치(오프셋, 파일 시작 기준)

 

 

 

 

반환 값

- 성공 시 실제로 파일에 저장한 사이즈(바이트)

       - 단, count 보다 작을 수 있다.

 

- 실패 시 -1

 

 

 

 

 


파일에서 읽기 - byte stream

ssize_t read(int fd, void *buf, size_t count);
ssize_t pread(int fd, void *buf, size_t count, off_t offset);

 

파라미터

 

- fd : 파일 디스크립터

 

- buf : 버퍼 포인터

 

- count : 저장할 사이즈(바이트)

 

- offset: 저장할 위치(오프셋, 파일 시작 기준)

 

 

 

 

반환 값

 

- 성공 시 실제로 파일에서 읽은 사이즈(바이트)

         - 단, count 보다 작을 수  있다.

 

- 실패 시 -1

 

 

 

 

 


파일 디스크립터  --> 파일 포인터 변환

FILE *fdopen(int fd, const char *mode);

 

파라미터

 

- fd : 파일 디스크립터

 

- mode : 권한

 

 

 

 

반환 값

 

- 성공 시 파일 포인터(stream)

 

- 실패 시 NULL

 

 

 

 

 


파일 포인터 --> 파일 디스크립터 변환

int fileno(FILE *stream);

 

파라미터

 

- stream : 파일 포인터

 

 

 

반환 값

 

- 성공 시 파일 디스크립터

 

- 실패 시 -1

반응형
Comments