int *p=new int [2];
cin>>p[3];//一维时。
int(*p)[2];
p=new int [2][2];
cin>>p[3][2];//二维时。
以上为什么都能通过编译!
int *p=new int [2];
cin>>p[3];//一维时。
int(*p)[2];
p=new int [2][2];
cin>>p[3][2];//二维时。
以上为什么都能通过编译!
能输入是你运气好,说明越界后的内存块现在没有进程在使用。否则你程序就挂了。而且你现在的意思只是编译通过,那肯定没问题,程序还没运行的时候,还不知道分配哪块内存呢。