请教以下程序为什么输出结果不一样??
性能侠客行 2008-03-11 07:52:04 程序1:
void main()
{
int *x= NULL;
int y[]={12,45,36,78,80};
x = y+2;
cout<<"----------*x="<<*x<<endl;
*(x++) = (*x)++;//疑问语句
cout<<"*x="<<*x<<'\n'<<"*y="<<*y<<endl;
cout<<"y[0]="<<y[0]<<endl;cout<<"y[1]="<<y[1]<<endl;cout<<"y[2]="<<y[2]<<endl;cout<<"y[3]="<<y[3]<<endl;
}
程序2:
void main()
{
int *x= NULL;
int y[]={12,45,36,78,80};
x = y+2;
cout<<"----------*x="<<*x<<endl;
(*x++)++;//疑问语句
cout<<"*x="<<*x<<'\n'<<"*y="<<*y<<endl;
cout<<"y[0]="<<y[0]<<endl;cout<<"y[1]="<<y[1]<<endl;cout<<"y[2]="<<y[2]<<endl;cout<<"y[3]="<<y[3]<<endl;
}
程序3:
void main()
{
int *x= NULL;
int y[]={12,45,36,78,80};
x = y+2;
cout<<"----------*x="<<*x<<endl;
(*++x)++;//疑问语句
cout<<"*x="<<*x<<'\n'<<"*y="<<*y<<endl;
cout<<"y[0]="<<y[0]<<endl;cout<<"y[1]="<<y[1]<<endl;cout<<"y[2]="<<y[2]<<endl;cout<<"y[3]="<<y[3]<<endl;
}