int f,u,k;
f=(u=5,k=0);
f值为多少?
温馨提示:答案为网友推荐,仅供参考
第1个回答 2019-09-12
首先要明白逗号运算是一个多元运算,它的整个的值都是最后一个表达式的值,这里所说的值是从左向右运算的。
上面程序中是先求x=a+b+z的值,而z的值根本就没有赋值,所以结果不会出现x,y都等于4的!!!就是说你的程序有问题。
若改成y=(z=a+b),(x=a+b+z)按照上面所说的运算顺序结果就是x=12,y=12;
你在看一下就可以了!
上面程序中是先求x=a+b+z的值,而z的值根本就没有赋值,所以结果不会出现x,y都等于4的!!!就是说你的程序有问题。
若改成y=(z=a+b),(x=a+b+z)按照上面所说的运算顺序结果就是x=12,y=12;
你在看一下就可以了!
第2个回答 2013-09-28
逗号表达式有两个作用
逗号前面和逗号后面的语句都会跑到,比如(u=5,k=0)这句,执行后,u的值是5,而k的值是0
整个表达式的值 = 最后一句的值 = (k=0) = 0,也就是f的值为0
第3个回答 2013-09-27
0 啊
逗号运算符的表达式的值,就是最后一个表达式的值,最后一个是k=0;
其实就是0本回答被提问者采纳
逗号运算符的表达式的值,就是最后一个表达式的值,最后一个是k=0;
其实就是0本回答被提问者采纳
第4个回答 2019-08-12
首先要明白逗号运算是一个多元运算,它的整个的值都是最后一个表达式的值,这里所说的值是从左向右运算的。
上面程序中是先求x=a+b+z的值,而z的值根本就没有赋值,所以结果不会出现x,y都等于4的!!!就是说你的程序有问题。
若改成y=(z=a+b),(x=a+b+z)按照上面所说的运算顺序结果就是x=12,y=12;
你在看一下就可以了!
上面程序中是先求x=a+b+z的值,而z的值根本就没有赋值,所以结果不会出现x,y都等于4的!!!就是说你的程序有问题。
若改成y=(z=a+b),(x=a+b+z)按照上面所说的运算顺序结果就是x=12,y=12;
你在看一下就可以了!