方书堂 发表于 2011-12-2 19:15 b=a++是只先把a的值赋值给b。然后再加1赋值给a。b=a++就相当于b=a;a=a+1
方书堂 发表于 2011-12-2 19:20 而a=a++就相当于把a当前的值赋给a,因为是先赋值运算的,然后才会做++的运算 ...
应国炎 发表于 2011-12-3 14:10 因为第一个a=a++是先用再加,先用3加1,原值再赋值给了a,所以a的值还是3。第二个a,加完以后就是4了,没有 ...
段波 发表于 2011-12-4 09:00 这是一个算符优先级的问题!a=a++;内部计算是:temp=a;a+=1;a=temp; 也就是说a=4的值被a=3的值覆盖了,所以 ...
戴振良 发表于 2011-12-4 20:32 这位大哥,请问这是你自已猜的还是在哪本书学的?对比以上的回答就你的似乎最有道理了!分析分解的也最详 ...
箫庐 发表于 2011-12-3 12:45 a++先赋值再运算这个我知道. 可是 a=a++明显没有做运算啊?我想问的是这个…… ...
杨银川 发表于 2011-12-4 21:14 做运算了吧,a=a++这条命令一开始先执行了"a=a",可以理解为覆盖,后又给a加了一个1,所以在接下来的运算中 ...
戴振良 发表于 2011-12-4 22:01 还是不明白。根椐你的”a=a“,那此时a=3,是吧?“后又给a加了一个1,那a=4了已经,是吧?可是a的值最后只 ...
周敏2011nc 发表于 2011-12-5 08:48 赋值语句,是将一个对象的引用赋给另一个对象:(a=a++)为了区别,在这里我们将左边a写成a1,右边a++的结 ...