谁能解释一下这个?int a5,则 ++(a++)的值()A、5B、6C、7D、逻辑错误答案是D求解释[解决办法]这个必须逻辑错误
谁能解释一下这个?
int a=5,则 ++(a++)的值()
A、5 B、 6 C、7 D、逻辑错误
答案是D
求解释
[解决办法]
这个必须逻辑错误啊,后缀的++返回的是原来的值,是个临时对象,而前缀++返回的是增加之后的值,那么
(a++)= 5 但是此时a=6;当你在给++a时 编译器就会提醒逻辑错误
[解决办法]
后置++返回的是一个const对象,前置++只能作用于一个非const左值上啊
[解决办法]
++左边或是右边只能是变量
[解决办法]
后缀++应该返回一个右值,可以理解成const的值,对这个值用前缀++应该会报错
