歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux下open與fopen的區別

Linux下open與fopen的區別   int open(const char *path, int access,int mode)     path 要打開的文件路徑和名稱       www.2cto.com     access 訪問模式,宏定義和含義如下:                                 O_RDONLY         1    只讀打開                                  O_WRONLY         2    只寫打開                                  O_RDWR           4    讀寫打開                              還可選擇以下模式與以上3種基本模式相與:                                 O_CREAT     0x0100   創建一個文件並打開                             O_TRUNC     0x0200   打開一個已存在的文件並將文件長度設置為0,其他屬性保持                      O_EXCL      0x0400   未使用                                         O_APPEND    0x0800   追加打開文件                                  O_TEXT      0x4000   打開文本文件翻譯CR-LF控制字符                  O_BINARY    0x8000   打開二進制字符,不作CR-LF翻譯                  www.2cto.com                            mode 該參數僅在access=O_CREAT方式下使用,其取值如下:               S_IFMT      0xF000   文件類型掩碼                               S_IFDIR     0x4000   目錄                                       S_IFIFO     0x1000   FIFO 專用                                  S_IFCHR     0x2000   字符專用                                   S_IFBLK     0x3000   塊專用                                     S_IFREG     0x8000   只為0x0000                                 S_IREAD     0x0100   可讀                                       S_IWRITE    0x0080   可寫                                       S_IEXEC     0x0040   可執行          FILE *fopen(char *filename, char *mode)     filename 文件名稱     mode 打開模式:                                                     r   只讀方式打開一個文本文件                                    rb  只讀方式打開一個二進制文件                                  w   只寫方式打開一個文本文件                                    wb  只寫方式打開一個二進制文件                                  a   追加方式打開一個文本文件                                    ab  追加方式打開一個二進制文件                                  r+  可讀可寫方式打開一個文本文件                                rb+ 可讀可寫方式打開一個二進制文件                              w+  可讀可寫方式創建一個文本文件                                wb+ 可讀可寫方式生成一個二進制文件                              a+  可讀可寫追加方式打開一個文本文件                            ab+ 可讀可寫方式追加一個二進制文件    www.2cto.com   open和fopen的區別: 前者屬於低級IO,後者是高級IO。 前者返回一個文件描述符,後者返回一個文件指針。 前者無緩沖,後者有緩沖。 前者與 read, write 等配合使用, 後者與 fread, fwrite等配合使用。 後者是在前者的基礎上擴充而來的,在大多數情況下,用後者。   
Copyright © Linux教程網 All Rights Reserved