#define LED1_ON() { /* twiddle port bit */ }
#define LED2_ON() { /* twiddle port bit */ }
// ...
#define LED9_ON() { /* twiddle port bit */ }
#define LED_ON(x) LED##x_ON()
我想使用上面的代码(或类似的代码)来(例如)LED_ON(1)
调用宏LED1_ON()
或LED_ON(2)
调用宏LED2_ON()
。
我相信可以让 cpp 做到这一点,但显然我没有正确的语法。有谁知道使这成为可能的语法?
在我调用的行上LED_ON(2)
,gcc 给出了错误消息:
undefined reference to `LEDx_ON'