++x=y什么意思,(x+y)++为什么错误

如题所述

++x=y 说的是 先将y的值赋值给x 然后x再自己+1
(x+y)++错误的原因是(x+y)不是一个变量而是一个表达式 表达式肯定不能自加啊
温馨提示:内容为网友见解,仅供参考
无其他回答

++x=y什么意思,(x+y)++为什么错误
(x+y)++错误的原因是(x+y)不是一个变量而是一个表达式 表达式肯定不能自加啊

int z=(x+y)++错在哪里?
原因是++的运算级别高于赋值运算 也就是说进行x+y之后进行的是自加运算。之后是赋值。可以加括号解决

赋值语句 ++x=y是否正确?
不正确,赋值语句左边必须是一个变量不能是一个表达式

在C语言中,为什么x++=y++是错误的,而++x=++y是正确的?
x++有两个地址,一个是x本身的地址,还有个x+1后的地址,所以它不能作为左值,y++不能赋给一个地址不确定的变量。所以会出错,而++x,只有一个地址,就是x+1后的地址,所以能将y+1后的值赋给它,所以是正确的,楼主应该是没明白前++和后++的意义,多看看教材理解理解。

若变量x,y为整型,则(x+y)++是合法的?
这不是合法的,因为(x+y)++这个表达式是一个自增表达式。但是(x+y)是一个表达式,最终会计算出一个有值的常量,而自增表达式中,参与的对象只能是变量,所以这是不合法的。

x,y 都是int, x++=y++ 为什么错?
也就是说 x++\/++x运行后 此式并没有一个变量去接受等式右边的值 所以错误假如这么定义的话:class XX{public:type & operator ++();type & operator ++(int);};会如何?呵呵自己运行一下下边的例子吧 #include <iostream>using namespace std;class INT{public: INT(int init){x = init;}; ~INT(){}...

y++ ;x+=++y 是什么意思啊 求完整的表达式
就是:y++;++y;x+=y;y自增2,然后将y加到x上。其中 x+=++y表示y先自增,再参与运算。若是 x+=y++则表示先运算,然后y再自增,相当于 x+=y; y++;

c语言中,关于逗号表达式输出最后一项的解释。(++x,y++)输出y++,解释
y++意思就是 y;y=y+1 ++x意思就是x=x+1;x 输出y++就是原有的y值+1,而不是(y++)++

c++语言中输出x++++为什么会出错
那么我就讲一下~因为x++与++x的区别不仅仅是一个前++,一个后++~还有一点就是x++是有返回值~而++又是从右往左计算的~所以他会报错的~打个比方就是i++之后变成了5,5还能++吗,不行的哦~那么前++是没有返回值的~~所以不管怎么计算都是没有问题的~如果你以后写for语句的时候发现有人写for(...

c语言几个小小的问题 高手帮个忙
3. (++x, y++)表示这是一个逗号表达式,逗号表达式取最后一个表达式的值,也就是y++的值,所以输出结果是3和3 4. printf("%8.4g\\n",b); 这句输出8756,%g表示按%e或者%f输出,8.4中8表示数据宽度是8位,4表示只输出4个有效位,所以除8756之外,其他位都被忽略了。printf("%12g,%g\\n...

相似回答