钱德勒宾和乔伊:C++ 二维指针指向二维数组
来源:百度文库 编辑:神马品牌网 时间:2024/05/05 23:44:13
int a[4][4]={1,2,3,4,2,3,4,5,3,4,5,6,4,5,6,7};
int **s=NULL;
s=&a[0][0];
这个为什么不对
我只想用一个二维指针指向二维数组,应该怎么做,不要动态创建的那种。
int **s=NULL;
s=&a[0][0];
这个为什么不对
我只想用一个二维指针指向二维数组,应该怎么做,不要动态创建的那种。
不能用二维指针指向二维数组,指向二维数组的指针最后一维必须是确定的。
int a[4][4]={1,2,3,4,2,3,4,5,3,4,5,6,4,5,6,7};
int (*s)[4]; //表明s指向一个n*4的数组
s=a;
还有一种方法是将二维数组看成是一维数组(因为数组在内存中连续存储)
int a[4][4]={1,2,3,4,2,3,4,5,3,4,5,6,4,5,6,7};
int *s;
s=&a[0][0];
这样可以用s[x*y]来表示a[x][y];