用c语言定义一个由指针组成的数组
时间: 2024-09-20 17:16:48 浏览: 49
在C语言中,你可以定义一个由指针组成的数组,通常称为指向指针的数组,也叫动态数组或函数指针数组。这个数组会存储指向不同类型数据结构或变量的指针。下面是一个简单的例子:
```c
#include <stdio.h>
// 假设我们有三种类型的结构体
typedef struct {
int value;
} IntType;
typedef struct {
char str[50];
} StringType;
typedef struct {
float num;
} FloatType;
// 定义一个指向这三种类型指针的数组
typedef void (*ptr_type)(void); // 定义通用指针类型
ptr_type pointer_array[] = {
(IntType*) malloc(sizeof(IntType)), // 对应整型
(StringType*) malloc(sizeof(StringType)), // 对应字符串
(FloatType*) malloc(sizeof(FloatType)) // 对应浮点数
};
相关问题
C语言中怎么定义高维指针数组
在C语言中,高维指针数组可以通过多次使用指针类型来定义。例如,一个二维指针数组可以定义为一个指向指针的指针,即:
```
int **arr; // 定义一个二维指针数组
```
这个定义可以看做是一个指向整型指针的指针。
对于一个 n 维指针数组,可以使用嵌套的指针类型进行定义,例如,一个三维指针数组可以定义为:
```
int ***arr; // 定义一个三维指针数组
```
这个定义可以看做是一个指向指针的指针的指针,即一个指向指针数组的指针数组。在使用时,需要动态分配内存来分配数组空间。
c语言 数组指针 指针数组
数组指针是指向数组的指针,它保存的是数组的首地址,并且指向的是整个数组。在C语言中,可以通过在指针名称前加上括号和数组大小的方式来定义数组指针,例如:char (*pOneArray) = &cTestOne。这里的pOneArray就是一个指向char类型的一维数组的指针。
指针数组是一个数组,它的元素都是指针。在C语言中,可以通过在指针名称后加上中括号和数组大小的方式来定义指针数组,例如:int *pArray[10]。这里的pArray就是一个由指向int类型的指针组成的数组。
阅读全文