头文件dirent.h

Posted 子非木

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了头文件dirent.h相关的知识,希望对你有一定的参考价值。

<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,执行失败返回0
return 1;
}

 

 

以上是关于头文件dirent.h的主要内容,如果未能解决你的问题,请参考以下文章

GitHub代码复现之opencv

dirent.h文件

c++宏变量的问题

Linux 目录操作—opendirreaddirclosedir

Linux 目录操作—opendirreaddirclosedir

Linux 目录操作—opendirreaddirclosedir