下面用乙個例項來對這些api函式進行說明
#include
#include
#include
#include
#include
int main(int argc, char *ar**)
int fd = -1;//檔案描述符
int ret = -1;
char wbuf[20] = "i love linux";
char rbuf[50] = ;
if(argc == 1)
printf("usage: %s filename\n", ar**[0]);
_exit(-1);
fd = open(ar**[1], o_rdwr);//o_rdwr為可讀可寫許可權;o_rdonly為唯讀許可權;o_wronly為只寫許可權
//o_trunc屬性去開啟檔案時,則檔案裡原有內容會被清空
//o_creat屬性去開啟檔案時,若目錄下沒有該檔案,則去建立該檔案,配合o_excl屬性一起 //使用,效果是若開啟已經存在的檔案,則會提示報錯
if(fd == -1)
perror("錯誤資訊");
_exit(-1);
else
printf("檔案描述符fd = %d\n", fd);
ret = write(fd, wbuf, 8);
if(ret == -1)
perror("錯誤資訊");
_exit(-1);
ret = lseek(fd, 0, seek_set);//lseek函式顯式的移動檔案指標,而read和write函式則是隱式的移動檔案指標
printf("檔案頭指標的偏移量:%d\n", ret);
ret = read(fd, rbuf, 8);
if(-1 == ret)
perror("錯誤資訊");
_exit(-1);
return 0;
/*lseek()函式可以用來計算檔案的長度(單位位元組),寫乙個例項*/
int cal_filelength(char *filename)
int fd = -1;
int ret = -1;
fd = open(filename, o_rdonly);
if(-1 == fd)
perror("錯誤資訊");
return -1;
ret = lseek(fd, 0, seek_end);
if(-1 == ret)
perror("錯誤資訊");
return -1;
return ret;
linux中檔案IO相關知識 4
open 標頭檔案 include 返回值 int open const char pathname,int flags,mod t mode mode 引數3使用的前提是 引數2指定了o creat,取值為八進位制數,用來描述檔案的訪問許可權。返回值 open常見錯誤 開啟檔案不存在 以寫方式開啟...
檔案I O相關函式
1.open 系統呼叫 開啟乙個檔案返回檔案描述符 int open const char name,int flags int open const char name,int flags,mode t mode 2.creat 函式 int creat const char name,mode ...
檔案I O相關函式
include 成功返回檔案描述符,出錯返回 1 int open const char path,int oflag,mode t mode int openat int fd,const char path,int oflag,mode t mode int creat const char p...