c++中有二维数组a[3][3],指针p指向&a[0][0]那么请问p[1]表示什么啊?
1个回答
展开全部
二维数组如:
a[3][3];
a[0] = {1,2,3};
a[1] = {3,4,5};
a[2] = {5,6,7};
p指向二维数组;
p[1] == a[1]
a[3][3];
a[0] = {1,2,3};
a[1] = {3,4,5};
a[2] = {5,6,7};
p指向二维数组;
p[1] == a[1]
追问
恩恩,那我还想问问若二维数组的初始值就是您说的那九位数那么p[7]又是指什么呢?
追答
不好意思,刚才说的有点错误:
有两种情况
int* p = &a[0][0]; 那么每次移动的单位就是int ,可以把二维数组当作一个大的一维数组
p[0] = 1;
p[1] = 2;
所以p[7] = 6; (数组下标从0开始)
int (*p)[3] = &a[0]; 这种是每次移动一个一维数组的宽度,a[3][3],一维数组的宽度就是3*sizeof(int)
p[7] 就是指向第7个一维数组
你这里用的是第一种情况,刚才没仔细看,不好意思
说了这么多,估计你还是不明白,看看下边链接,对你有帮助:
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询