C 语言指针数组
指针数组是一种用于存储指向其他变量的指针的特殊数据结构。它允许我们通过单一指针访问多个变量。
创建指针数组
要创建指针数组,需要使用以下语法:
立即学习“C语言免费学习笔记(深入)”;
<code class="c">数据类型 (*指针变量名)[数组大小];</code>
例如:
<code class="c">int *ptrs[5];</code>
这将创建一个包含 5 个整数指针的指针数组。
访问数组元素
可以使用方括号运算符访问指针数组的元素。例如,要访问第一个元素,可以使用以下语法:
<code class="c">ptrs[0];</code>
解引用指针
为了访问实际变量的值,需要解引用指针。可以使用星号 (*) 运算符来解引用指针。例如,要访问第一个元素的值,可以使用以下语法:
<code class="c">*ptrs[0];</code>
使用指针数组
指针数组可以用于各种目的,例如:
存储动态分配的内存地址 实现链表等数据结构 将函数指针存储在数组中以创建函数表示例
下面是一个使用指针数组的示例:
<code class="c">#include <stdio.h>
#include <stdlib.h>
int main() {
int *ptrs[5];
// 分配内存并存储指针
for (int i = 0; i < 5; i++) {
ptrs[i] = malloc(sizeof(int));
*ptrs[i] = i;
}
// 访问和打印值
for (int i = 0; i < 5; i++) {
printf("%d\n", *ptrs[i]);
}
// 释放内存
for (int i = 0; i < 5; i++) {
free(ptrs[i]);
}
return 0;
}</code> 