C语言宏的字符串化

C语言中宏的字符串化涉及两种形式:

1、任意字符的字符串化,用到的符号为#

2、字符串拼接,用到的符号为##


在内核中,字符串化的宏为

#define _str(x)  #x

#define str(x)  _str(x)


字符串拼接通常用于C代码中,而在内联汇编中使用字符串拼接宏操作指定寄存器的方法为:

#define AMS_TEST(reg)   \

asm volatile ("add $" #reg ", $2, $2")

你可能感兴趣的:(C语言宏的字符串化)