以下是引用傻瓜笨笨1986在2010-10-9 13:52:28的发言:
哥哥,i的,我明白了,n=j++,我不明白,为什么不先算j++而是先把j赋值给n后才算j++,++的优先级不是比=高吗,在同一个表达式里应该先计算++啊。谢谢
你错了··n=j++,该表达式的确是先计算的j++这个没疑问。而不是 先把j赋值给n后才算j++。
所以是这样··先计算j++
该表达式的值为j,紧接着++副作用产生j这个变量的内容已经改变,也就是增加了1··
这里你需要注意一个问题··j值和j变量不是同一个东西!
然后把运算得到的值转换为
赋值符号左边
的类型并存储··
楼主一定要记住··表达式就是一个值··C里所以的表达式最终都会产生一个值。
而这个表达式值是一个常数··无法更改!!!