c中的宏中的多个逗号是什么意思
What means multiple commas in a macro in c
这个宏是什么意思或者结果是什么?
#define MOD_TYPE_12 0x11, 0x20, 0x0C, 0x00, 0x02, 0x00, 0x07, 0x0F, 0x42, 0x40, 0x01, 0xC9, 0xC3, 0x80, 0x00, 0x02
这是对数组求值吗?
我找不到任何东西...可能是因为我不知道我要搜索什么 ^^
逗号在宏中没有任何特殊含义,只要使用宏,它们就会被复制。例如:
int arr = {MOD_TYPE_12};
变成
int arr = {0x11, 0x20, 0x0C, 0x00, 0x02, 0x00, 0x07, 0x0F, 0x42, 0x40, 0x01, 0xC9, 0xC3, 0x80, 0x00, 0x02};
或者:
someFunction(MOD_TYPE_12);
变成
someFunction(0x11, 0x20, 0x0C, 0x00, 0x02, 0x00, 0x07, 0x0F, 0x42, 0x40, 0x01, 0xC9, 0xC3, 0x80, 0x00, 0x02);
全部
MOD_TYPE_12
在您的程序中将替换为
0x11, 0x20, 0x0C
逗号没有特长
这个宏是什么意思或者结果是什么?
#define MOD_TYPE_12 0x11, 0x20, 0x0C, 0x00, 0x02, 0x00, 0x07, 0x0F, 0x42, 0x40, 0x01, 0xC9, 0xC3, 0x80, 0x00, 0x02
这是对数组求值吗?
我找不到任何东西...可能是因为我不知道我要搜索什么 ^^
逗号在宏中没有任何特殊含义,只要使用宏,它们就会被复制。例如:
int arr = {MOD_TYPE_12};
变成
int arr = {0x11, 0x20, 0x0C, 0x00, 0x02, 0x00, 0x07, 0x0F, 0x42, 0x40, 0x01, 0xC9, 0xC3, 0x80, 0x00, 0x02};
或者:
someFunction(MOD_TYPE_12);
变成
someFunction(0x11, 0x20, 0x0C, 0x00, 0x02, 0x00, 0x07, 0x0F, 0x42, 0x40, 0x01, 0xC9, 0xC3, 0x80, 0x00, 0x02);
全部
MOD_TYPE_12
在您的程序中将替换为
0x11, 0x20, 0x0C
逗号没有特长