readdir 函数是用于读取目录内容的函数,它在 C 语言的 <dirent.h> 头文件中定义。在 CentOS 系统上使用 readdir 函数的基本步骤如下:
readdir 函数读取目录项。下面是一个简单的示例程序,演示如何使用 readdir 函数列出指定目录中的所有文件和子目录:
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
#include <string.h>
int main() {
DIR *dir;
struct dirent *entry;
// 指定要打开的目录路径
const char *path = "/path/to/directory";
// 打开目录
dir = opendir(path);
if (dir == NULL) {
perror("opendir");
return EXIT_FAILURE;
}
// 读取目录项
while ((entry = readdir(dir)) != NULL) {
// 打印文件名或目录名
printf("%s\n", entry->d_name);
}
// 关闭目录
closedir(dir);
return EXIT_SUCCESS;
}
opendir 函数用于打开一个目录流,并返回一个指向 DIR 结构的指针。readdir 函数用于读取目录流中的下一个目录项。每次调用 readdir 都会返回一个指向 dirent 结构的指针,该结构包含目录项的信息,如文件名。closedir 函数用于关闭一个已打开的目录流。编译并运行这个程序时,请将 /path/to/directory 替换为你想要列出内容的实际目录路径。