#define STRCAT2_(a, b) a##b #define STRCAT2(a, b) STRCAT2_(a, b) #define STRCAT3_(a, b, c) a##b##c #define STRCAT3(a, b, c) STRCAT3_(a, b, c) #define UART_AT_PORT STRCAT2(HT_, UART_AT_CLK)## 这个操作符是把两个标识符 “粘” 成一个,比如:
A ## B → AB HT_ ## GPIOA → HT_GPIOA假设UART_AT_CLK的值是GPIOA
UART_AT_PORT就是HT_GPIOA