小编Jin*_*aul的帖子

带有()和{}的C预处理器宏代码

#include <stdio.h>
#define a (1,2,3)
#define b {1,2,3}

int main()
{
    unsigned int c = a;
    unsigned int d = b;
    printf("%d\n",c);
    printf("%d\n",d);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

上面的C代码将打印输出为31.

但是,如何#define a (1,2,3)#define b {1,2,3}采取= 3,B = 1不生成警告,以及如何(){}被赋予不同的值?

c

6
推荐指数
1
解决办法
95
查看次数

标签 统计

c ×1