|
发表于 2019-10-23 17:38:22
|
显示全部楼层
int array[2000][5000][100][500][8]
上面的定义就是末维为 8 的整型数组,无论有多少维,只要最后那一维是 8 个元素就是了。
指向数组的指针所指向的数值仍然是指针(地址),如果要访问具体的数组元素还需要继续取值。
研究一下下面的代码,对你也许会有所帮助:
- #include <stdio.h>
- main(void)
- {
- int array[5][8] = {{1 , 2 , 3 , 4 ,5 , 6 , 7 , 8} ,\
- {11 , 12 , 13 , 14 , 15 , 16 , 17 , 18} ,\
- {21 , 22 , 23 , 24 , 25 , 26 , 27 , 28} ,\
- {31 , 32 , 33 , 34 , 35 , 36 , 37 , 38} ,\
- {41 , 42 , 43 , 44 , 45 , 46 , 47 , 48}} ;
- int (* p)[8] ;
- p = array ;
- printf("array[3][6] = %d\n" , * (* (p + 3) + 6)) ;
- }
复制代码
|
|