struct stat結構體簡介

struct stat這個結構體是用來描述一個系統文件系統中的文件屬性的結構。

通過路徑獲得文件屬性

  • stat(const char* path, const stat* stat_struct)

第一個參數是文件的路徑,第二個參數是struct stat的指針。

  • 執行成功時,返回值爲0
  • 執行失敗時,error被自動設置爲下面的值:

    • EBADF: 文件描述詞無效
    • EFAULT: 地址空間不可訪問
    • ELOOP: 遍歷路徑時遇到太多的符號連接
    • ENAMETOOLONG:文件路徑名太長
    • ENOENT:路徑名的部分組件不存在,或路徑名是空字串
    • ENOMEM:內存不足
    • ENOTDIR:路徑名的部分組件不是目錄

stat結構

struct stat {
        mode_t     st_mode;       //文件對應的模式,文件,目錄等
        ino_t      st_ino;       //inode節點號
        dev_t      st_dev;        //設備號碼
        dev_t      st_rdev;       //特殊設備號碼
        nlink_t    st_nlink;      //文件的連接數
        uid_t      st_uid;        //文件所有者
        gid_t      st_gid;        //文件所有者對應的組
        off_t      st_size;       //普通文件,對應的文件字節數
        time_t     st_atime;      //文件最後被訪問的時間
        time_t     st_mtime;      //文件內容最後被修改的時間
        time_t     st_ctime;      //文件狀態改變時間
        blksize_t st_blksize;    //文件內容對應的塊大小
        blkcnt_t   st_blocks;     //偉建內容對應的塊數量
      };
發佈了137 篇原創文章 · 獲贊 22 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章