int(*p)[4]定义了一个指针p,指向一个4个元素的数组。只是定义一个指针,指向4个元素的数组int*p[4]定义了一个数组指针p[4],p的每个元素指向一个整型的数据。就是数组里面保存的是指针(1)int*p[2]是一个指向int型的指针数组,即:p是包含两个元素的指针数组,指针指向的是int型。可以这样来用:#include<iostream.h>voidmain(){int*p[2];inta[3]={1,2,3};intb[4]={4,5,6,7};p[0]=a;p[1]=b;for(inti=0;i<3;i++)cout<<*p[0]+i;//cout<<**p+i;cout<<endl;for(i=0;i<4;i++)cout<<*p[1]+i;//cout<<**p+i;}(2)对于 int(*p)[2],它相当于一个二维数组的用法,只是它是一个n行2列的数组,可以这样来用:#include<iostream.h>voidmain(){int(*p)[2];intb[3][2]={{1,2},{3,4},{5,6}};p=b;for(inti=0;i<3;i++){for(intj=0;j<2;j++)//cout<<p[i][j];//cout<<*(*(p+i)+j);cout<<endl;}}<回答者:lstno1bd>
阅读全文 >