C语言中宏的字符串化涉及两种形式:
1、任意字符的字符串化,用到的符号为#
2、字符串拼接,用到的符号为##
在内核中,字符串化的宏为
#define _str(x) #x
#define str(x) _str(x)
字符串拼接通常用于C代码中,而在内联汇编中使用字符串拼接宏操作指定寄存器的方法为:
#define AMS_TEST(reg) \
asm volatile ("add $" #reg ", $2, $2")
C语言中宏的字符串化涉及两种形式:
1、任意字符的字符串化,用到的符号为#
2、字符串拼接,用到的符号为##
在内核中,字符串化的宏为
#define _str(x) #x
#define str(x) _str(x)
字符串拼接通常用于C代码中,而在内联汇编中使用字符串拼接宏操作指定寄存器的方法为:
#define AMS_TEST(reg) \
asm volatile ("add $" #reg ", $2, $2")