关于C++预处理器的几个问题:

niX*_*man -3 c++ c-preprocessor

关于C++预处理器的一些问题:

  1. 如何让预处理器进入预处理代码的新行?
  2. 如何让预处理器在预处理代码中插入制表符或多个空格?
  3. 如何让预处理器在预处理代码中插入注释?

Mot*_*tti 6

关于#3,预处理器有责任从代码中删除注释,我认为不允许将它们留在其中.在任何情况下,这都是特定于您正在使用的C++编译器的标志,因此您应该指定您的环境.


Tim*_*Čas 5

正如其他人所概述的那样,问题 2) 和 3) 没有多大意义。

至于问题1,我假设您的意思是多行宏,可以通过以下方式完成:

#define FOO line 1 \
    line 2  \
    line 3  \
    ...     \
    line n
Run Code Online (Sandbox Code Playgroud)

注意\最后一行的缺失!