如何用数组指针访问数组中的元素(C++)

来源:百度知道 编辑:UC知道 时间:2024/06/18 14:41:39
#include "iostream.h"
int main()
{
int array[10];
int (*ptr)[10];

//错误ptr[2]=array;
//错误*ptr=array;
*ptr[3]=*array;//正确的,但不知道为什么,这里的*ptr[3]是指向整型数组第三个元素的指针吗?
//这个也不对啊ptr=*array; 这里的*array是怎么指向的啊?

return 0;
}

对于数组指针,怎么用数组指针来访问数组中的元素?

*array的顺序是什么样的呢?
是 array-->*array-->数组元素
还是 *array-->array-->数组元素
还是别的什么,这里都学混了,请各位指教,谢谢

数组在内存中的存储数据就是从array[0]----->array[9]

不会存储什么array或者*array

array只是一个数组的名字,它不占据存储空间.但是它有值,它的值就是数组的首

地址值.

ptr[2]=array; ptr[2]为int 类型 array为指针 错

*ptr=array; 相当于ptr[0]=array 错误

*ptr[3]=*array; 相当于 array[3]=array[0]; 对.

访问:

for(i=0;i<10;i++)

{
printf("%d",*ptr++);

}

for(i=0;i<10;i++)

{
printf("%d",ptr[i]);

}

两个都可以