int a = (1, 2, 5);
printf("a=%d\n", a);
在C中,这将打印5。
有人可以解释为什么要打印5以及这种语法在哪种情况下使用?
答案 0 :(得分:1)
C中的逗号运算符是一个序列点,这意味着用逗号分隔的表达式从左到右执行。整个表达式的值是最右边的表达式的值,在你的情况5中,它被赋值给变量p。
答案 1 :(得分:0)
C
中的逗号运算符具有最低优先级,即它具有最低优先级,因此最终会对其进行评估。
当在表达式中使用多个逗号运算符时,逗号运算符返回最右侧操作数的值。