是POSIX.1標準定義的unix類目錄操作的頭檔案,包含了許多UNIX系統服務的函式原型,例如opendir函式、readdir函式.
基本介紹
- 中文名:dirent.h
- 屬性:目錄操作的頭檔案
- 包含:UNIX系統服務的函式原型
- 例如:opendir函式
定義,命令,
定義
#include <dirent.h>
是POSIX.1標準定義的unix類目錄操作的頭檔案,包含了許多UNIX系統服務的函式原型,例如opendir函式、readdir函式.
opendir函式:
DIR *opendir(const char *pathname);返回值:若成功則返回指針,若出錯則返回NULL。
struct dirent *readdir(DIR *dp); 返回值:若成功則返回指針,若在目錄結尾或出錯則返回NULL。
===============================================================================
命令
列出一個目錄下所有檔案的名字,簡要實現unix下ls命令
#include<stdio.h>#include<dirent.h>int main(int argc,char* agrv[]){DIR* dp;struct dirent* dirp;if(argc!=2){ printf("usage:lsdirectory_name\n"); //不返回的話,程式會執行出錯 return 0;}if((dp=opendir(agrv[1]))==NULL){ printf("cannotopen%s",agrv[1]); //不返回的話,程式會執行出錯 return 0;}while((dirp=readdir(dp))!=NULL){ printf("%s\n",dirp->d_name);}closedir(dp);//c語言以非0為真,所以程式執行成功的話返回1,執行失敗返回0return 0;}