c 中不支持这种操作
lz 代码中是逗号表达式
(a,b) 的结果是 b
(1,2) 的结果是 2
即相当于 b = 2
a 没有赋值,如果没有初始化,就是随机内容
由于逗号操作符的作用,导致(a,b)的值是b,同理,后面的是2,所以只对b赋值,a没赋值,里面存储的是系统随机分配的值。
因为括号中的是 逗号表达式有效地只是最后一个字符 综合来看 等号前面的(a,b)有效的是b 等号后面的(1,2)有效的事2 所以只能把2赋给b
uint
c;
然后再main里面写
c=
a*b;
c语言里不能用变量初始化。
当然c99标准里是可以的,不过多数编译器还不支持