Notice
Recent Posts
Recent Comments
Today
Total
05-19 00:04
Archives
관리 메뉴

Jeongchul Kim

리눅스 creat - 리눅스 시스템 프로그래밍 본문

Linux

리눅스 creat - 리눅스 시스템 프로그래밍

김 정출 2016. 2. 29. 09:43


리눅스 creat - 리눅스 시스템 프로그래밍


creat는 open을 O_WRONLY, O_CREAT, O_TRUNC 플래그와 함께 사용한 것과 같은 동일한 기능을 가집니다.

기존의 파일이 있을 경우 새로 쓰며, 파일이 없을 경우 새로운 파일을 생성하여 오픈 합니다.


int creat(const char* pathname, mode_t mode);


> pathname : 파일의 경로명

> mode : 새롭게 생성하는 파일의 초기 접근 권한,

존재하지 않는 파일을 새롭게 생성하는 것이므로, 생략할 수 없다.

> return 값 : 정상적으로 파일을 오픈하게 되면 파일 기술자(file descriptor)를 반환한다.

오픈을 실패하면 -1을 반환한다.


#include <unistd.h>

#include <stdio.h>

#include <fcntl.h>

int main() {

int filedes1, filedes2;

filedes1 = open("open.txt", O_WRONLY | O_CREAT | O_TRUNC, 0644);

filedes2 = creat("creat.txt",0644);

close(filedes1);

close(filedes2);

}


O_TRUNC 플래그는 파일을 오픈하면, 기존의 내용을 삭제하고, 읽기/쓰기 포인터를 파일의 첫 번째 위치로 옮기는 기능을 수행합니다.


O_EXCL 플래그는 중요한 파일이 함부로 변경되어서는 안 되는 경우에 경로를 지정하면, open의 수행이 실패하게 되므로 유용하다.





Comments