国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

linux文件的通用操作方法學習

2024-06-28 13:25:06
字體:
來源:轉載
供稿:網友
linux文件的通用操作方法學習

2014-07-29 23:36:10

  在linux下用文件描述符來表示設備文件和普通文件。文件描述符是一個整型的數據,所有對文件的操作都通過文件描述符實現。

  文件描述符示文件系統中連接用戶空間和內核空間的樞紐。當打開一個或者創建一個文件時,內核空間創建相應的結構,并生成一個整型的變量傳遞給用戶空間的對應進程。進程用這個文件描述符來對文件進行操作。

  文件描述符的范圍示0~OPEN_MAX,因此是一個有限的資源,在使用完畢后要及時釋放,通常示調用從close()函數關閉。注意的是文件描述符的值僅在同一個進程中有效,即不同進程文件描述符,同一個值很可能描述的不是同一個設備或普通文件。在里linux系統中有3個已經分配的文件描述符,即標準輸入,標準輸出和標準錯誤,他們文件描述符的值分別問0 1 和2。可以查看/dev/下的stdin(標準輸入) stout(標準輸出)和stderr(標準錯誤),會發現分別指向/PRoc/self/fd/目錄下的0 1 2文件。

  1.   打開創建文件open(),creat()函數

  查看函數功能可在終端輸入 man 2 open,此手冊包含了函數所含頭文件,函數功能,函數參數取值

  函數原型為:int open(const char *pathname,int flags);

        int open(const char *pathname,int flags,mode_t mode);

  兩者差別在于flags取值,當你man 2 open的時候你會看到flags的取值,當flags使用O_CREAT時要指定mode的值,其實就是創建文件比說明權限!

  以下是一個簡單的打開文件的程序:

 1 #include <sys/types.h> 2 #include <sys/stat.h> 3 #include <fcntl.h> 4 #include <stdio.h> 5  6 int main(void) 7 { 8     int fd = -1;     //文件描述符聲明 9     char filename[] = "text.txt";//打開的文件名10     fd = open(filename,O_RDWR); //打開的方式為可讀寫方式11     if(fd == -1)  //打開失敗12     {13         printf("open file s% is  failed!,fd:%d/n",filename,fde);14     }15     else        //打開成功16     {17         printf("open file s% sucess!,fd:%d/n",filename,fd);18     }20     return 0;21 }


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 都兰县| 金山区| 泽库县| 大竹县| 安庆市| 泰宁县| 涡阳县| 蛟河市| 鸡泽县| 镇沅| 西平县| 米泉市| 山东省| 康乐县| 嘉义市| 长阳| 汤阴县| 湘西| 定州市| 柞水县| 双柏县| 铁岭市| 鄂伦春自治旗| 阿拉善右旗| 盱眙县| 孙吴县| 门源| 镇平县| 中阳县| 英德市| 昭苏县| 吴江市| 汕尾市| 鞍山市| 布尔津县| 慈利县| 紫阳县| 内江市| 洛南县| 浦东新区| 商丘市|