以下虚构的C方言不起作用,因为C表达式不能是宏。
然而,有一种方法可以在C?
中实现这样的缩写参考#include <stdio.h>
#include <string.h>
typedef struct{
int connected;
}connection;
typedef struct{
connection d[2];
}connections;
#define (c.d[i]) (c.d[i].connected)
main()
{
connections c;
if(c.d[x]){
printf("sos");
}
}
答案 0 :(得分:2)
没有。宏名称必须是有效的C标识符(字母数字字符和下划线,不能以数字开头)。