(a++) += a为啥不对?而(++a) += a却正确?
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/18 16:24:48
xSn@,5 |+uEUӆ4<6؆/ܙa/Z*%9sνhCҹ~p"Hik0w뷱o/WR6FѧSMlt%4zwv9O '<<{<{@zF4XAtEA(@"Ū3wxUWĉNI1
a]!PI4,n^ZZj[ū͢LC?i9j4Bu}uEn+`W*5XEl@c+fqW"6#40 rcH,OORFi
7gMBAxHm%JQM]TabPRlXŭ+xPґ
?Zچ#9OK!3V,qyЫ\<d
D!x{MQ.z/jA
07w)<)7K
(a++) += a为啥不对?而(++a) += a却正确?
(a++) += a为啥不对?
而(++a) += a却正确?
(a++) += a为啥不对?而(++a) += a却正确?
因为C/C++要求+=语句的左面是一个“左值”(l-value).而++a的结果是左值,但a++不是.不用说(a++) += a这样诡秘的语句不行,就是(a++)=0也是错的.
至于为什么++a的结果是左值但a++不是,简单的回答是:C/C++语言本身规定如此.如果再追问为什么这样规定,可以解释如下:
对一个合法的赋值语句(例如a=0),编译程序总是先求出等号右边的值,然后再求出左值的地址并立即把计算出的值赋给该地址.
但对于(a++)=0,如果a++可以作为左值,则编译程序求出左值的地址后就不能立即对其进行赋值操作,而是要插入一个加一操作.这就破坏了编译程序在编译不同赋值语句的一致性.
(a++) += a为啥不对?而(++a) += a却正确?
此题A为啥不对
today is a good weather为啥不对?
减数分裂图像分析 A为啥不对
高中物理.如图看2题.A为啥不对?
21题目为啥a对 b不对?
第9题A为啥不对
21届高一希望杯试题第五题的答案说 a(b*c)=(a*b)c不对为啥
What is --- life like?A tomorrow of B tomorrow's为啥A不对并翻译
lingo中min=sqrt(x^2+(y-a)^2)+sqrt((x-b)^2+(y-c)^2)+y;为啥不对
设n阶方阵A满足 A^2=A A不等于E 则 () A.A是满秩 B.A是零矩阵 C.A的秩小于n D.以上都不对.选哪个为啥
关于简谐振动的旋转矢量图示法的题目,为啥选c,a为啥不对啊,选择1题
为啥选A
29为啥a
高中英语23为啥a
为啥是选A.
3为啥A错.
为啥选A?