C中的变量定义

1 c variables declaration

以下声明在C中意味着什么?

char a = (10,23,21);
Run Code Online (Sandbox Code Playgroud)

使用"%u"打印"a"的值时,输出为21. gcc并未给出任何错误.什么是这种声明以及它的用途是什么?

bdo*_*lan 7

您正在看到逗号运算符正在运行.逗号运算符a,b计算a,抛弃结果,然后返回b.

由于10并且23没有副作用,这相当于char a = 21;