【发布时间】:2021-09-18 12:43:00
【问题描述】:
我经常看到类似的代码
#ifndef HEADERFILE_H
#define HEADERFILE_H
// some declarations in
// the header file.
#endif
我想知道#define HEADERFILE_H 将HEADERFILE_H 定义为什么?
我试过了
cout<<HEADERFILE_H<<endl;
但我得到了
error: expected expression
【问题讨论】:
-
如果你
#define TEST之后在某处使用它,TEST将被替换为空。例如:int x = foo(TEST);等价于int x = foo();。正如@ThomasJager 指出的那样,在这种情况下,“空”#define仅用于包含标题一次。 -
您似乎在中途切换语言。你说的是 C,但代码是 C++。是哪个?
-
想用printf但不知道类型,所以用cout
标签: c c-preprocessor