readdir
是一个在 UNIX 和类 UNIX 系统(如 Linux)上用于读取目录内容的函数。它在 CentOS(一种基于 RHEL 的 Linux 发行版)上也是可用的。然而,readdir
函数并不是跨平台的,因为它主要存在于 UNIX 和类 UNIX 系统中。
如果你需要在其他操作系统(如 Windows)上实现类似的功能,你可以使用相应的跨平台库,如 Boost.Filesystem 或 C++17 中的 std::filesystem。这些库提供了在不同操作系统上读取目录内容的通用接口。
例如,在 C++17 中,你可以使用以下代码来读取目录内容:
#include <iostream>
#include <filesystem>
namespace fs = std::filesystem;
int main() {
for (const auto& entry : fs::directory_iterator("path/to/directory")) {
std::cout << entry.path() << std::endl;
}
return 0;
}
这段代码使用了 C++17 的 <filesystem>
库,它提供了一个跨平台的接口来处理文件和目录操作。