|
|
1
48
试试这个
“”用于连接符号,而不是字符串。字符串可以简单地在C中并置,编译器将它们连接起来,这就是这个宏所做的。首先把str1和str2变成字符串
它将连接到
高温高压
编辑
如果调用为,将导致以下结果
它不是一个字符串,而是一个符号,最后可能会出现一个未定义的符号错误,说明“helloworld”不存在,除非先定义它。这是合法的:
|
|
|
2
5
|
|
|
3
0
正确的做法是将两条弦一条接一条地放在一起。##“不行。只是:
|
|
|
Timo · 如果宏变量后跟构成有效标识符的字符,则不会展开宏变量 8 年前 |
|
|
user3623498 · 在#if中更改变量时出现问题 8 年前 |
|
|
einpoklum · 来自#cmakedefine替换的意外结果 8 年前 |
|
|
Joseph Franciscus · C中预处理器方法的别名++ 8 年前 |
|
|
stoper · 防止同一宏在多个转换单元中具有不同的定义 8 年前 |
|
|
СеÑгей · MinGW中预处理器g++的奇怪行为 8 年前 |