我可以将二维数组看作指针的一维数组,它的第j个索引是指向矩阵的第j行数组的指针吗? 例如,如果我有一个数组[4] [4]。是arr [2]指向第二行数组的指针?二维数组作为指针的一维数组
-1
A
回答
0
不可以。数据在内存中是连续的。
arr [2]将知道单个数组的大小,并将其添加到数组指针的2倍以获得适当的偏移量。
+0
取决于它是如何创建的。如果它是以固定维度静态分配的,那么你说的正确的是数据是连续的,但声明'
0
我可能是真的......如果你是这样分配的话:How do I work with dynamic multi-dimensional arrays in C?。但是,最好的方法是使用类似&arr[2][0]
的东西。 Bye,Francis
0
我可以将二维数组看作指针的一维数组,它的第j个索引是指向矩阵的第j行数组的指针吗?
是。但请记住,数组不是指针。在2D阵列array[M][N]
的情况下,为阵列元素array[i]
(这里的i
是int
)中的每一个分配空格。但是在指针数组*array[M]
的情况下,您需要为每个元素array
分配空间。
例如,如果我有一个数组[4] [4]。是arr [2]指向第二行数组的指针?
是。 arr2
衰退到指向行2的指针
相关问题
- 1. 指针的二维数组
- 2. 指针二维数组
- 3. 二维数组和指针
- 4. 二维数组指针C
- 5. 二维数组指针
- 6. 二维数组指针
- 7. 指针二维数组
- 8. 作为输入参数的指针(二维数组)的指针
- 9. 将一维数组为二维数组
- 10. 将二维数组转换为指针
- 11. 指向二维数组的指针
- 12. 二维数组的C指针算术
- 13. 通过指针的二维数组
- 14. C:二维数组的指针
- 15. 二维数组上的指针
- 16. C:传递指针的二维数组作为参数
- 17. 传递一个二维数组作为指针C
- 18. 一维数组和二维数组
- 19. C指针与二维数组
- 20. C++指针到二维数组
- 21. 转换指针二维数组
- 22. C++指针和二维数组输出
- 23. 使用指针填充二维数组
- 24. 双指针实验二维数组
- 25. 迭代一维数组作为二维数组
- 26. 指向数组和二维数组c的指针c
- 27. 通过指针将数组转换为二维数组
- 28. 堆分配一个二维数组(而不是指针数组)
- 29. 指向一维数组的双指针
- 30. 将二维数组转换为指针指针
您是否将一维数组看作指针? – nhgrif
阅读[comp.lang.c常见问题](http://www.c-faq.com)的第6部分。 –