在 CentOS(本质是 Linux)上,readdir 是可以用来遍历目录的。
readdir 是 POSIX 标准 C 库函数(在 <dirent.h> 中),用于读取目录中的条目。
#include <dirent.h>
#include <stdio.h>
int main() {
DIR *dir = opendir(".");
struct dirent *entry;
while ((entry = readdir(dir)) != NULL) {
printf("%s\n", entry->d_name);
}
closedir(dir);
return 0;
}
✅ 完全支持
readdir / readdir_r / readdir64 都可用readdir 不是递归的,只遍历当前目录. 和 ..readdir_r(旧)或 readdir + 线程局部(新 glibc)getdents)if (entry->d_type == DT_DIR) {
// 递归调用遍历子目录
}
如果你是想问:
可以告诉我具体场景。