Markdown 转义标记以与C预处理器一起使用

Markdown 转义标记以与C预处理器一起使用,markdown,c-preprocessor,Markdown,C Preprocessor,我想在同一个文件中结合Markdown和C预处理器指令。问题是#在两种语言中都有意义。假设先运行C预处理器,我如何才能看到在标记标题中使用的任何?尝试定义一个值为“#”的C预处理器宏。例如: #define HASHMARK # Some text before. HASHMARK 47 != 42 HASHMARK 48 != 42 HASHMARK 49 != 42 Some text after. 示例输出(根据Cygwin上的gcc 4.5.3进行预处理): 您可能需要调整这一点

我想在同一个文件中结合Markdown和C预处理器指令。问题是
#
在两种语言中都有意义。假设先运行C预处理器,我如何才能看到在标记标题中使用的任何

尝试定义一个值为“#”的C预处理器宏。例如:

#define HASHMARK #

Some text before.

HASHMARK 47 != 42
HASHMARK 48 != 42
HASHMARK 49 != 42

Some text after.
示例输出(根据Cygwin上的gcc 4.5.3进行预处理):


您可能需要调整这一点,这样您的应用程序的间隔是正确的。

除了Mark Leighton Fisher的回答之外,您还可以考虑<代码> M4< /代码>宏处理器作为CPP的更灵活的替代。它不需要
#
,而且任何安装了cpp的系统也可能有
m4
Some text before.

 # 47 != 42
 # 48 != 42
 # 49 != 42

Some text after.