本人想用指针操作三维数组,于是编了如下的代码,用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++吧