對某個目錄具有訪問許可權的任一使用者都可以讀該目錄,但是,為了防止檔案系統發生混亂,只允許核心寫目錄。
#include
dir *opendir(const char *pathname);
dir *fdopendir(int fd);
兩個函式返回值:若成功,返回指標;若出錯,返回null
struct dirent *readdir(dir *dp);
返回值:若成功,返回指標;若在目錄尾或出錯,返回null
void rewinddir(dir *dp)
int closedir(dir *dp)
返回值:若成功,返回0;若出錯,返回-1
long telldir(dir *dp)
返回值:與dp關聯的目錄中的當前位置
void seekdir(dir *dp, long loc);
struct dirent ;注意:d_name項的大小並沒有指定,但必須保證他它能至少包含name_max個位元組(不包含終止null位元組)。檔名是以null位元組結束的。
dir結構是乙個內部結構,上述7個函式用這個內部結構儲存當前正在被讀取的目錄的有關資訊。
由opendir和fdopendir返回的指向dir結構的指標由另外5個函式使用。
fdopendir的返回值需要考慮到檔案描述符相關的檔案偏移量。
《unix環境高階程式設計》 讀書筆記 目錄
近來讀書,做些筆記,來年好翻翻。本文所使用的作業系統為 centos7.0,如果不想裝雙系統的可以裝虛擬機器,可以參考這裡 當然啦,直接裝個再好不過了。涉及主題 檔案描述符,系統資源限制,檔案相關,close on exec,涉及函式 getrlimit,setrlimit lseek,open,c...
《unix環境高階程式設計》筆記2
第四章 檔案和目錄 本章將描述檔案系統特徵和檔案性質 1 stat fstat和lstat函式 原型 include int stat const char restrict pathname,struct stat restrict buf int fstat int filedes,struct...
UNIX環境高階程式設計學習筆記
include include include include int main int argc,char argv err sys can t open s argv 1 while dirp readdir dp null printf s n dirp d name closedir dp ...