我不知道是否已经有人提出同样的问题,但我无法通过高级搜索找到它[c] [宏]"# #"
我想定义多个宏,如下所示:
#define CHANNEL_0 0
#define CHANNEL_1 1
...
#define CHANNEL_31 31
我可以用这个符号##以简单的方式做到吗?如何? 或者也许有某种方式?
谢谢!
答案 0 :(得分:3)
我不认为“##”是最好的解决方案。为什么不直接使用 enum ?如果只需要0到31之间的数字,我认为没有理由不能使用它。
enum eChannel {
Channel0, /* evaluates to 0 */
Channel1, /* evaluates to 1 */
...
Channel31 /* evaluates to 31 */
};
用法与 #defines
相同if(channel == Channel1) do_smth();