*(p++)与*(++p)作用不同.若p的初值为a,则*(p++)等价a[0],*(++p)等价a[1].这句话怎么理解?*(p++)不是等于先*p=a;然后p++=a;a=a+1吗?

来源:学生作业帮助网 编辑:六六作业网 时间:2024/07/06 11:12:49
*(p++)与*(++p)作用不同.若p的初值为a,则*(p++)等价a[0],*(++p)等价a[1].这句话怎么理解?*(p++)不是等于先*p=a;然后p++=a;a=a+1吗?*(p++)与*

*(p++)与*(++p)作用不同.若p的初值为a,则*(p++)等价a[0],*(++p)等价a[1].这句话怎么理解?*(p++)不是等于先*p=a;然后p++=a;a=a+1吗?
*(p++)与*(++p)作用不同.若p的初值为a,则*(p++)等价a[0],*(++p)等价a[1].这句话怎么理解?
*(p++)不是等于先*p=a;然后p++=a;a=a+1吗?

*(p++)与*(++p)作用不同.若p的初值为a,则*(p++)等价a[0],*(++p)等价a[1].这句话怎么理解?*(p++)不是等于先*p=a;然后p++=a;a=a+1吗?
运算顺序不一样,*(p++)先运行*()这个运算,然后再运行p++,故*(p++)等价于a[0];
*(++p)先运行++p,然后再运行*(),故*(p++)等价于a[1];
但这两句话最后的P都加了1.