1

或者有没有其他方法可以将项目目录转换为字符串?我试过这个

const char* filepath = std::getenv("SRCROOT");

但是文件路径显示为空,但它适用于其他环境变量。SRCROOT 是否有某种代码内别名?我不能只使用“../”,我需要字符串中的完整路径。

4

2 回答 2

1

我发现的最佳选择是Other C Flags根据 ${SRCROOT} 环境变量在您的项目属性下定义宏。就是这样 :

在此处输入图像描述

您可以SRCROOT将 C/C++ 代码上的 用作常量字符串。

于 2017-11-19T12:15:36.400 回答
0

至于项目的目录,请检查您的 IDE 文档中的环境变量。它可能有一个翻译,将使用项目目录创建一个宏。

可执行文件的目录通常可以从传递main函数的第一个参数中获得。

否则项目目录,尤其是目录结构,是平台相关的。一些平台,比如嵌入式系统,没有目录,只有内存。有关详细信息,请咨询您的操作系统。

作为替代方案,您可以让构建系统define在命令行上将项目名称作为 a 传递。其他想法是创建环境变量或配置文件;一切都应该由构建系统完成。

于 2012-11-19T16:08:57.500 回答