如何使用C语言查找桌面路径?

时间:2011-03-16 01:22:03

标签: c windows

有人可以告诉我如何使用C语言命令获取桌面路径(环境变量)。

场景是我想在桌面上保存文件。我能做的就是提供固定的桌面路径和文件名以保存文件。但是在给出这个固定路径之后,我的代码将变得僵硬,并且不能在具有不同桌面路径(环境变量)的任何其他计算机上工作。 我的问题是,通过使用C语言捕获桌面的环境变量,我可以使我的代码可以在任何基于Windows的机器上实现吗?

此致

2 个答案:

答案 0 :(得分:10)

答案 1 :(得分:3)

您可以使用函数getenv()访问环境变量:

  

环境变量的值   可以使用getenv访问   功能。这是在宣布   头文件stdlib.h。

对于Windows系统,如果您向USERPROFILE追加\Desktop,则{{1}}应该是好的(例如,请参阅mgiuca提供的the link)。请注意,在大多数情况下,路径将包含空格,因此请相应地处理它。

此外,使用环境变量来获取桌面文件夹的路径并不是最好的方法,在某些情况下可能不起作用(另请参阅此主题的其他SO答案,如this one),所以请看这个回答你的具体问题的答案,特别是对于“C ++中的环境变量”部分。