c语言readdir函数用于列出目录中的文件和子目录。它定义在
#include <stdio.h> #include <stdlib.h> #include <dirent.h> int main() { DIR *dirp; struct dirent *entry; // 打开当前目录 dirp = opendir("."); if (dirp == NULL) { perror("opendir"); return EXIT_FAILURE; } // 读取目录内容 while ((entry = readdir(dirp)) != NULL) { printf("%s ", entry->d_name); } // 关闭目录 closedir(dirp); return EXIT_SUCCESS; }
代码首先包含必要的头文件,然后使用opendir(“.”)打开当前目录。 readdir(dirp)函数逐个读取目录项,直到返回NULL表示结束。 entry->d_name包含文件名。最后,closedir(dirp)关闭目录。
需要注意的是,此代码仅适用于类unix系统(如Linux和macos)。Windows系统需要使用不同的API函数,例如FindFirstFile、FindNextFile和FindClose。