참고한 것들
open()
Header 정보
#include <fcntl.h>
- 간단하게 말하면 파일을 열고 file descriptor 를 반환한다.
- 그리고 에러가 나면 음수가 반환된다.
int fd;
if ((fd = open("file_path", options, 0644)) < 0)
{
fprintf(stderr, "error: File open failed with %d\n", errno);
}
- 우선 첫번째 인자로 파일 경로, 두번째는 옵션, 세번째는 권한이 들어간다.
- 여기서 권한은 그냥 linux permission 이다. 잘 모르겠으면
0644
(RW-R-R) 를 넣으면 된다.
- 여기서 권한은 그냥 linux permission 이다. 잘 모르겠으면
Options
- 흔히 사용하는 옵션들만 몇개 알아보자. 여러개의 옵션을 사용할 때에는 OR (
|
) 로 묶으면 된다. 별일 없으면 아래처럼 옵션을 주면 된다.
O_RDWR | O_CREAT
- 추가적으로 이런애들이 있다:
close()
Header 정보
#include <unistd.h>
- 이건 열어놓았던 파일을
fd
를 이용해 닫는다.- 근데 개빡치는건 헤더파일이
open()
와 다르게unistd.h
이다.
- 근데 개빡치는건 헤더파일이
if (close(fd) < 0)
{
fprintf(stderr, "error: File close failed with %d\n", errno);
}