【发布时间】:2017-05-16 14:19:01
【问题描述】:
例如:
#include "pathtoheader1/header1.hh"
##include "pathtoheader2/header2.hh"
这两个预处理指令有什么区别?
编辑
据我所知,在我正在使用的程序的上下文中,##include 指令会将 -I 标志添加到指定的包含路径。
TRICK_CFLAGS += -Imodels
TRICK_CXXFLAGS += -Imodels
编译器现在将寻找:
/models/pathtoheader1/header1.hh
而不是
/pathtoheader1/header1.hh
这些标志存储在 .mk 文件中。
其他信息
我正在使用 NASA 的 Trick Simulation 环境来构建一个简单的地球绕太阳运行的 2 体模拟。我正在使用的特定工具称为“trick-CP”,它是 Trick 的编译工具。
【问题讨论】:
-
第二个不行。
-
您使用的是哪个编译器?这是 C 还是 C++?
-
这不是一个直接的骗局,但它非常接近,What does ## mean for the C(C++) preprocessor?。
-
@Bathsheba 这是 gcc 编译器。
-
编辑您的问题并添加此信息,因为纯 C 和 C++ 没有此功能。
标签: c-preprocessor