本人想用指针操作三维数组,于是编了如下的代码,用gcc编译成功了,但是报错。
到网上去搜索没有找到解决方案,求帮助各位大神指点一下。
到网上去搜索没有找到解决方案,求帮助各位大神指点一下。
Segmentation fault (core dumped)
#include <stdio.h>
int main()
{
int arr[3][5][7];
int (*p)[5][7];
int i;
int j;
int k;
p = arr;
for (i = 0;i < 3;i++)
for (j = 0;j < 5;j++)
for (k = 0;k < 7;j++)
{
arr[i][j][k] = i * 100 + j * 10 + k;
}
printf("p[2][3][5] = %d\n", p[2][3][5]);
return 0;
}
解决方案:20分
一眼看到两个j++
解决方案:10分
哈哈 ,眼尖!
for (i = 0;i < 3;i++)
for (j = 0;j < 5;j++)
for (k = 0;k < 7;j++)
for (i = 0;i < 3;i++)
for (j = 0;j < 5;j++)
for (k = 0;k < 7;j++)
解决方案:10分
第三个循环应该是想表示k++吧