在C语言中,数组除了通过数组索引访问,也可以通过指针来访问数组中的元素。下面是一个简单的例子:
c
#include <stdio.h>
int main() {
int array[5] = {1, 2, 3, 4, 5};
int *ptr = array; // 指向数组的第一个元素的指针
printf("数组元素为:");
for(int i = 0; i < 5; i++) {
printf("%d ", *(ptr + i)); // 通过指针访问数组元素
}
return 0;
}
在这个例子中,我们首先定义了一个包含5个元素的整数数组array
。然后,我们定义了一个指向array
的第一个元素的指针ptr
。在for
循环中,我们使用*(ptr + i)
来访问数组中的每一个元素,并将其打印出来。
需要注意的是,指针加法操作的结果是该指针所指向的数据类型大小的偏移量,而不是简单的地址偏移。所以,ptr + i
的结果是指向数组第i+1
个元素的指针。使用*
运算符可以获取该地址处的值,即访问到数组中的元素。