c语言 i++ 和 ++i 有关问题求解

c语言 i++ 和 ++i 问题求解
c语言  i++ 和 ++i 有关问题求解

求解为什么a,b和c,d的输出结果为什么会不一样?有什么区别?

c语言  i++ 和 ++i 有关问题求解谢过~~
------解决思路----------------------
引用:
Quote: 引用:

a++;a 自增,返回a 自增之前的值。
++a ; a 自增,返回 a 自增之后的值。

a++,++b; 两个返回的值都被丢弃了(没有赋值给任何变量)。后续打印出的 a b 自增后的值。
printf(...., c++, ++b) , 这个打印出来的是两个 ++ 的返回值。

a++不是等同于a=a+1有赋值吗?c语言  i++ 和 ++i 有关问题求解


a++ 有赋值。

a++ 与 a=a+1 并不是等同的。比如他们的返回值就是不同的。
------解决思路----------------------
首先结果是:a=1,b=1,c=0,d=1
a++,b++;
独自成为一句表示a=a+1;,b同理;
而包含在一句代码中,c++表示先使用c的值,c再自加1,而++d表示先自加1 ,然后再使用d的值。。希望明白