我有一段代码,应该在Windows和Unix系统(Mac、Linux等)上运行,并且我想访问/删除相对路径中的一些文件,是否有一种方式可以构建路径,以便两个操作系统都兼容(类似于Java的File.separator
)?
我想到的最接近的方法是这样的:
#ifdef _WIN32
#define FILE_SEPARATOR "\\"
#else
#define FILE_SEPARATOR "/"
#endif
//in windows - ".\\filedir\\filename.txt"
//in *nix - "./filedir/filename.txt"
const char * mypath = "." FILE_SEPARATOR "filedir" FILE_SEPARATOR "filename.txt";
编辑
在阅读下面的回答/评论后,我想要补充说明的是,确认Windows XP或更高版本是否符合POSIX标准对我来说已经足够了。