请告诉我指针数组和数组指针有什么区别,特别是在 C 语言中
最佳答案
设 T 为随机类型(int、long int、double、enum ecc..),则:
int n=3;
T arr[n];
T*p=arr;
p
是指向 T 数组 arr
第一个元素的指针,因此您可以像这样访问数组的第一个元素:
arr[0]="whatever you want but a r-value"
或
p=...
这是一种无需索引即可在数组中移动的简单方法,也是按值传递变量的绝佳解决方案。请记住,指针具有指向对象的左值作为右值,当取消引用指针时,我们获得指向的对象。所以写 p+1 意味着将指针移动到数组的第二个元素。 指针数组实际上是该对象的集合(指向变量或另一个数据结构的指针)。例如,您可以使用 int 指针数组来跟踪线性列表的所有元素。由于您没有定义每个指针,因此它们未被引用,因此这可能是一种危险的编码方式。
关于c - C语言中的指针数组和指针数组有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47819483/