c – 指向数组的点是什么?

前端之家收集整理的这篇文章主要介绍了c – 指向数组的点是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以,我正在阅读有关指针,并且看到了指向数组的指针的概念.事实是,一个指向数组的指针根本看起来并不重要,因为不用使用指针来获得一个数组元素的偏移量,所以我可以直接获取元素.但是我觉得我失去了为什么这些可以有用的原因.

那么简而言之,指向数组的点是什么?它们应该如何和为什么被使用,它们有什么实际应用?

编辑:我的意思是在正常/简单数组的上下文中,如:

int array[5];

编辑:正如Keith指出的那样,我特意询问数组的指针,例如char(* ptr)[42],它是一个指向一个42元素的char数组的指针.

解决方法

不幸的是,您收到的一些答案在C中显示了对指针和数组的误解,简而言之:

1)指向数组的指针与指向第一个元素的指针不同.

2)声明数组类型与声明指针不同.

您可以在C faq部分找到与指针和数组之间常见混淆相关的完整描述:http://c-faq.com/aryptr/index.html

处理你的问题 – 指向数组的指针是有用的,以传递一个编译时间已知大小的整个数组,并在参数传递过程中保留有关其大小的信息.当处理某些数组的子阵列时,在处理多维数组时也是有用的.

猜你在找的C&C++相关文章