A
(i++)++等价于(i++)=(i++)+1;
左边也是表达式。
D左边不能是表达式。
i++和d+3都是表达式,不是变量
你不能给一个表达式赋值
就像d+3,你想给它赋值5,那你到底是赋值给d还是赋值给3呢,还是想给d赋值2?你这就过分了吧
a选项:从人的思维模式来看,(i++)++的意思为,i自加1后再自加1次,但是在编译器看来,(i++)++,是(i++)自加1,但是,(i++)却不是一个可以被修改或赋值的变量。
d选项:编程不是简单的数学方程式,从编程的角度来看,(i+3)=5这就是一个赋值的表达式,但是,等号的左边(i+3)却不是一个可以赋值的变量,而是一个算式,这不符合c的语法,因此,d不能被认为是正确的表达式