问个优先级的问题
int a[10];int i,*p=a;
for(i=0;i<10;i++)
cin>>*(p+i);
for(p=a;p<(a+10);)
cout<<*p++<<' ';
红色部分:*于++是同一优先级,应该遵循从右至左的规律,所以应该是先算p++,然后再算*p++的值才对啊?
但是为什么输出以后是按着先*p后p++来计算???
令外,看谭老师的书,里面提到,调用fun(i,++i)函数,许多C++系统(如GCC)是按从右至左的顺序求值,那如果i初值等于3的话,应该是fun(4,4)啊?但是书上写的是fun(3,3)
求解谢谢!:)
[ 本帖最后由 夕野先生 于 2010-6-7 16:50 编辑 ]