#include <iostream>
using namespace std;
int main()
{
int c[2][4]={1,2,3,4,5,6,7,8};
int *a[2]; //指针数组,数组中每个元素都是指针,元素表示:*a[i]
int (*b)[4]; //数组指针,整个数组是指针, 元素表示:(*a)[i]
b=c;
//将数组c中元素赋给数组a
for(int i=0;i<2;i++)
{
a[i]=c[i];
}
//a[i]控制在那一行
cout<<*a[1]<<endl; //输出5
cout<<*(a[1]+2)<<endl;//输出7
//*(b+i)控制在哪一行
cout<<(*b)[1]<<endl; //输出2
cout<<(*(b+1))[2]<<endl; //输出7
return 0;
}
int (*b)[4] ,b是一个指针,指向一个整型的一维数组,这个一维数组的长度是4,也可以说是b的步长。也就是说执行b+1时,p要跨过4个整型数据的长度(b+1,指针到第一行,第零行有4列)