读书人

很诡异的C++代码.解决思路

发布时间: 2013-01-25 15:55:30 作者: rapoo

很诡异的C++代码..
int main()
{
int arr[] = {6, 7, 8, 9, 10};
int *ptr = arr;
++ptr;
cout << *ptr << endl;
cout << *ptr << '\n'
<< *(++ptr) << endl;
return 0;
}
输出结果是 7, 8, 8;

int main()
{
int arr[] = {6, 7, 8, 9, 10};
int *ptr = arr;
++ptr;
cout << *ptr << endl;
cout << *ptr << '\n';
cout << *(++ptr) << endl;
return 0;
}
输出结果是 7, 7, 8

这是什么情况???
[解决办法]
其实读取顺序是从右向左的,输出结果是从左向右而已
[解决办法]
cout << a << b << c << d;
是先d后c后b后a

读书人网 >C++

热点推荐