windows下MSVC兼容的dirent.h

<dirent.h>是一个应用程序接口,主要用于文件系统的目录读取操作,主要提供了几个目录数据读取函数,参见opengroup.org<dirent.h>

int            closedir(DIR *);//关闭目录
DIR           *opendir(const char *);//打开目录
struct dirent *readdir(DIR *);//读取目录
int            readdir_r(DIR *, struct dirent *, struct dirent **);
void           rewinddir(DIR *);
void           seekdir(DIR *, long int);
long int       telldir(DIR *);

<dirent.h>是个unix系统下常见的接口,但windows平台的MSVC编译器并没有提供这个接口( Cygwin5 and MingW现在已经提供了dirent接口),对于跨平台的项目开发就会带来一些麻烦,如果在MSVC下编译时可能因为windows平台缺少这个接口就要为windows平台另外写一些代码。
开源世界真是个好地方,非常多乐于分享的人为开源世界贡献了很多有用的东西,当然现在贡献多的主要是歪果仁童鞋啦。
在网上一搜索,已经有人在windows下为MSVC实现了dirent.h接口(在这里感谢一下外国的活雷锋们)。于是很多事情y就可以一下子变得简单了。
打开下面的链接,就可以下载到windows平台的dirent.h及相关的测试代码

Dirent API for Microsoft Visual Studio
代码最新的github托管地址是:https://github.com/tronkko/dirent

使用也非常简单把dirent.h加到你的MSVC include目录下就好了。比如:

C:\Program Files\Microsoft Visual Studio 9.0\VC\include

如果你不想对在MSVC的include目录下添加文件,而是想把它放在自己的项目代码中,也可以,但必须以下面的方式include:

#include <dirent.h> 

不能是

#include "dirent.h" 

这样可以确保,当编译器提供了dirent.h的时候(比如mingw),优先使用编译自带的dirent.h

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

10km

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值