C++关于指针的问题

[复制链接]
查看11 | 回复2 | 2011-1-3 20:40:36 | 显示全部楼层 |阅读模式
int a=2;
int *b=&a;
cout<<*b++;
cout<<a;
输出23
int a=2;
cout<<a++;
cout<<a;
输出23
这两个程序不是一个意思吗,怎么结果不一样呢
说错了 前面那个输出22 后面的输出23

回复

使用道具 举报

千问 | 2011-1-3 20:40:36 | 显示全部楼层
*b++根据单目运算符的右结合性,先算的++,即*(b++)所以自增的是指针b,而不是b指向的数据
回复

使用道具 举报

千问 | 2011-1-3 20:40:36 | 显示全部楼层
不会一样.的优先级高于*,这意味着*b先指向a的下一个内存单元再取其值.而不知道下个内存的值
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行