反斜杠(\)
当一个宏定义有多行时,非末行的结尾要加上反斜杆,告知编译器,该宏还有下一行。在行尾的反斜杠之不能加空格或者字符,否则编译会报错。
反引号+双引号(`")
该符号的作用时把字符串中的宏都展开。
举例说明:
`define def_A string1
`define def_B string2
`define def_C `"def_A def_B`"
那把def_C展开就是string1 string2
双反引号(``)
它可以帮助编译器区分宏定义的字符,其分隔符标记作用。下面举例说明。
`define defA st1
`define defB st2
如果我们在define一个defC,想引用defA和defB,
`define defC `defA.`defB 这样可以实现
`define defC `"defA``.``defB`" 这样也可以实现。
其实反双引号在传递有参数的宏定义时用的比较多,以上只是简单的示例。