如何在 C++ 中以跨平台的方式找到用户的主目录?即 Linux 中的 /home/user,Windows Vista 上的 C:\Users\user\,Windows XP 上的 C:\Documents And Settings\user\,以及 Mac 使用的任何内容。 (我认为是/用户/用户)
基本上,我正在寻找的是一种 C++ 方法(python 中的示例)
os.path.expanduser("~")
原文由 Macha 发布,翻译遵循 CC BY-SA 4.0 许可协议
我认为不可能用这个完全隐藏 Windows/Unix 的鸿沟(除非,也许,Boost 有什么东西)。
最便携的方法必须是
getenv("HOME")
在 Unix 上并连接getenv("HOMEDRIVE")
和getenv("HOMEPATH")
在 Windows 上的结果。