#include <stdio.h>
int main()
{
int a[10],*p;
for(p=a;p<a+10;p++)
{
scanf("%d",p);
}
for(p=a;p<a+10;p++)
{
printf("%d ",*p);
}
printf("\n");
return 0;
}
预期输出:4 91 51 2 32 16 31 79 42 82
使用指针变量存取一维数组元素的原理是将数组的首地址赋给指针变量,然后通过指针变量访问数组元素。具体地说,可以通过以下步骤实现:
定义一个指向数组的指针变量,如int *p;
将数组的首地址赋给指针变量,可以使用以下两种方式:
a. 直接将数组名赋给指针变量,如p = arr;
b. 取数组名的地址赋给指针变量,如p = &arr[0];
通过指针变量访问数组元素,可以使用以下两种方式:
a. 使用指针变量加上偏移量访问数组元素,如p[i],其中i为偏移量。
b. 使用指针变量加减操作访问数组元素,如*(p+i),其中i为偏移量。
注意,指针变量存取数组元素时,需要注意数组下标越界的问题,否则会导致程序异常或崩溃。