C语言指针数组和数值指针
时间: 2024-06-16 10:01:03 浏览: 272
C语言数组和指针
在C语言中,指针数组和数值指针是两个不同的概念,但它们都是用于处理内存地址的工具。
**指针数组:**
一个指针数组是一组指向同一类型数据的指针的集合。这些指针元素在数组中占有连续的内存空间,每个元素存储的是另一个变量的地址。例如,如果你有一个整型数组,你可以创建一个指向该数组元素的指针数组:
```c
int numbers[] = {10, 20, 30};
int *pointer_array; // 声明一个包含3个元素的整型指针数组
// 初始化指针数组
for (int i = 0; i < 3; i++) {
pointer_array[i] = &numbers[i];
}
```
在这个例子中,`pointer_array`中的每个元素都存储了`numbers`数组相应位置的地址。
**数值指针:**
数值指针,或者说简单指针,是指向单个变量的内存地址。当你声明一个变量时,可以为它分配内存,然后用取址运算符`&`获取该变量的地址,将其赋值给一个指针。例如:
```c
int myNumber = 15;
int *numberPointer = &myNumber; // numberPointer现在指向myNumber的地址
```
数值指针通常用来间接访问或修改存储在其指向的内存位置的数据。
阅读全文