ikors 发表于 2018-5-15 20:13:38

逗号运算符问题


如图,甲鱼老师说逗号运算符号表示最后一个表达式的结果。
那这个y应该等于b+c嘛?
为什么等于6啊?
二楼上运行出来结果。

ikors 发表于 2018-5-15 20:14:50

如图

人造人 发表于 2018-5-15 20:23:55

运算符优先级问题
https://www.cnblogs.com/hnrainll/archive/2011/08/03/2126660.html
#include <stdio.h>

int main(void)
{
        int a = 2, b = 4, c = 6, x, y;
       
        y = (x = a + b), (b + c);
        printf("y=%d, x=%d\n", y, x);

        ( y = (x = a + b) ), (b + c);
        printf("y=%d, x=%d\n", y, x);


        y = ( (x = a + b), (b + c) );
        printf("y=%d, x=%d\n", y, x);
       
        return 0;
}


y=6, x=6
y=6, x=6
y=10, x=6
请按任意键继续. . .

人造人 发表于 2018-5-15 20:26:13

ikors 发表于 2018-5-15 20:33:02

人造人 发表于 2018-5-15 20:26


好的 ,,明白了{:5_103:}

ikors 发表于 2018-5-15 20:42:38

谢谢{:5_95:}

北城以北灬 发表于 2018-5-16 11:37:41

老师那集视频给出的例子是错的,少了一个括号,运算优先级的问题,赋值运算优与逗号运算符
页: [1]
查看完整版本: 逗号运算符问题