c语言 通过指针来遍历数组 的例子
时间: 2023-08-08 13:05:00 浏览: 81
C语言中可以通过指针来遍历数组。下面是一个例子:
```
#include <stdio.h>
int main() {
int arr[5] = {1, 2, 3, 4, 5};
int *p = arr; // 将指针p指向数组arr的第一个元素
for (int i = 0; i < 5; i++) {
printf("%d ", *p); // 输出指针p所指向的元素
p++; // 指针p向后移动一位
}
return 0;
}
```
在上面的例子中,我们定义了一个整数数组`arr`,并将指针`p`指向数组的第一个元素。然后,我们使用一个循环来遍历整个数组,每次输出指针`p`所指向的元素,并将指针`p`向后移动一位。这样,指针`p`就可以遍历整个数组。注意,在遍历数组时需要确保指针`p`不越界。
相关问题
如何使用指针遍历数组?
使用指针遍历数组可以通过指针变量来访问数组元素,以下是C语言的一个例子:
```c
#include <stdio.h>
int main() {
int arr[8] = {1, 2, 3, 4, 5, 6, 7, 8};
int *p;
for ( = &(arr[0]); p < &(arr[7]); p++) {
("%d", *p);
}
return 0;
}
```
这个例子,我们定义了一个整型数组arr,然后定义了一个指向整型的指针变量p,将p指向数组的第一个元素arr,然后通过循环遍历数组,每次将指针p向后移动一个位置,直到指针p指向数组的最后一个元素arr为止。在循环中,我们使用*p来访问指针p所指向的数组元素的值,并将其打印出来。
c 语言用函数指针遍历数组
在C语言中,函数指针可以用于遍历数组,特别是当处理指向函数的指针数组时。例如,假设有一个函数指针类型的数组,每个元素对应一个执行特定操作的函数:
```c
typedef void (*func_ptr)(int); // 定义函数指针类型
// 定义一些函数并将其地址存储到数组中
void print(int x) {
printf("%d\n", x);
}
void increment(int x) {
x++;
printf("%d\n", x);
}
func_ptr array[] = {print, increment}; // 函数指针数组
int array_size = sizeof(array) / sizeof(array[0]); // 数组大小
// 使用函数指针遍历数组
for (int i = 0; i < array_size; i++) {
array[i](5); // 调用数组对应的函数,传入参数
}
```
在这个例子中,`array`数组通过函数指针实现了对两个函数的操作,每次循环都会根据当前索引i动态地调用相应的函数。
阅读全文