【问题标题】:MSVC /FA GCC equivalentMSVC /FA GCC 等效
【发布时间】:2014-11-14 13:54:29
【问题描述】:

我正在使用 GCC 编译器,我想使用 __FILE__ 打印文件的完整路径,但 GCC 只显示文件名。在 MSVC 中是相同的,但您可以使用参数 /FC (Full Path of Source Code File in Diagnostics) 并且它可以工作。有没有相当于 GCC 的?

int main(int argc, char ** argv)
{
    std::cout << __FILE__ << std::endl;
    return 0;
}

【问题讨论】:

    标签: c++ c visual-c++ gcc c++11


    【解决方案1】:

    我找不到任何等价物,但我意识到 __FILE__ 宏通过预处理器打开文件所使用的路径扩展为当前输入文件的名称。所以这将取决于传递给编译器的内容。

    我使用CMake 作为构建系统解决了这个问题。当CMake 创建MakeFile 时,它​​使用变量CMAKE_SOURCE_DIR 中的完整路径,这样__FILE__ 将完全按照我们的预期打印。

    【讨论】:

      猜你喜欢
      • 2019-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-08
      • 1970-01-01
      • 2011-02-07
      • 2010-09-26
      • 2016-03-02
      相关资源
      最近更新 更多