c++ - 替换 findfirst() 和 findnext()

标签 c++ visual-c++ visual-c++-2010-express

有没有 findfirst() 的替代品和findnext() 。 我正在使用microsoft visual c++ 2010 express并且它不支持这些函数,头文件 <dir.h> 也不支持?

我想使用这些函数来计算目录中的文件数量,但没有这些函数我遇到了问题。

如果没有替代上述功能还有其他办法吗? ?其他一些功能?

最佳答案

正如“iammilind”在评论中所说(可能值得回答) - 您可以使用Windows api的FindFirstFileFindNextFile函数,您只需填写一个结构并迭代后者,直到到达无效句柄。这些函数确实可以在控制台上运行,但您必须包含“Windows.h” header 。

但是,这些函数确实存在一些缺陷,如果您希望代码在 Windows 以外的任何设备上运行,您最好使用另一个 header /库(例如 vBx 提到的 Boost::Filesystem) .

此外,这可能会有所帮助: C++ - Load all filename + count the number of files in a current directory + filter file extension

关于c++ - 替换 findfirst() 和 findnext(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6567697/

相关文章:

double 类型的 C++ 变量总是将它们的值更改为 -9,25596e+061

c++ - 需要帮助优化查找所有可能子字符串的程序

c++ - 如何在 C++ 中通过其值类型专门化迭代器?

c++ - OpenGL 3.x/4x 中的纹素/像素匹配

C++ 堆损坏

c++ - 增量优化掉(Visual C Express 2010)

c++ - 使用 Visual C++ 和 MFC 发出 ping 声音错误

c++ - 在 Metro 应用程序中使用 fopen 打开文件

c++ - 我如何处理无效的异常处理例程?

sdl - 无法使用 Visual C++ 2010 Express Edition 编译 SDL 项目(链接器错误)