c++ - 包装一行预处理器 C++

标签 c++ c-preprocessor

如何包装一行预处理器指令并忽略多余的空间?

测试代码:

    #error Line0\
    Line 1

结果:

short_test.cpp(1): error: #error directive: Line0    Line 1
      #error Line0\
       ^

虽然我想在测试代码中保留缩进模式,但我不想在结果中显示第 0 行和第 1 行之间的间距。

这可能吗?

我想要的结果:

short_test.cpp(1): error: #error directive: Line0Line 1
no space between Line0 and Line1

我想要的测试代码

    #error Line0\
    (extra stuff?) Line 1  <-- keep the indent, ok to insert some extra stuff.

最佳答案

对不起,你不能。

预处理器将精确地接受您提供的内容,包括任何缩进。

关于c++ - 包装一行预处理器 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39707502/

相关文章:

c++ - std::unordered_map 的自定义分配器设置增量值

c++ - Qt为多行文本绘制轮廓

c++ - 使 c++ 宏 2 包含宏 1 的引用主体

c++ - 在 Qt 中 moc'ing 头文件时奇怪的预处理器行为

c++ - _mm_moveh_ps 的 AVX 等效项

c++ - 将基于范围的 for 循环与第三方容器结合使用

c++ - 关于boost mpl占位符的推理

c++ - 常数乘法的奇怪值

c++ - 在 C 或 C++ 中定义结构的宏

c - 如何检查参数是否是 C 预处理器宏中的整型常量表达式?