在Linux下,用C语言实现列出指定目录下的所有文件和文件夹:
#include <stdio.h> #include <dirent.h> #include <stdlib.h> int main() { DIR *dirp; struct dirent *direntp; dirp = opendir("/home/zcm/program/eclipse"); if(dirp != NULL) { while(1) { direntp = readdir(dirp); if(direntp == NULL) break; else if(direntp->d_name[0] != '.') printf("%s\n", direntp->d_name); } closedir(dirp); return EXIT_SUCCESS; } return EXIT_FAILURE; }
在上面的代码中,对以“.”开头的目录或文件名作了过滤,这样是为了不输出目录"."和".."以及“隐藏文件”。