c - 在 C 中加入文件系统路径

标签 c filesystems path-separator

类似于 python 如何具有方便的 os.path.join() 函数,我想知道是否有一种好的跨平台方法可以在 C 中执行此操作。

我目前的方法是设置一些像这样的预处理器指令

#ifdef defined(linux)
#define PATH_SEPARATOR "/"
#else
#define PATH_SEPARATOR "\\"
#endif

最佳答案

我很确定许多跨平台库都具有这样的功能。也许您想看看 APR 的 apr_filepath_merge功能。

在 C++ 中,您可以使用 Boost:

#include <boost/filesystem.hpp>
using namespace boost::filesystem;

[...]    

path path1("/tmp");
path path2("example");
path result = path1 / path2;

关于c - 在 C 中加入文件系统路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9230554/

相关文章:

c++ - 在 C/C++ 中使用常量优化的函数调用

c - 如何从Assembly中调用C函数,以及如何将其静态链接?

r - 如何在 Unix 系统上的 R 中获取真实的文件创建日期?

java - 使用java在linux中列出子目录/文件

cordova - ionic cordova 从 sdcard 获取所有 mp3 文件

php - 何时在 PHP 代码中使用 DIRECTORY_SEPARATOR?

c - typedef char (*fptr1())(); 的用法

c - 如何将客户端的recv()部分更改为中断服务例程?

java - 在java代码中将Windows风格的路径转换为unix路径

c# - 有没有正确的方法来创建 html src 路径?