定义一个结构体类型的指针
时间: 2023-03-28 14:02:18 浏览: 65
可以这样定义一个结构体类型的指针:
struct student {
char name[20];
int age;
float score;
};
struct student *p;
相关问题
怎么malloc一个结构体类型的指针数组
要malloc一个结构体类型的指针数组,可以按照以下方法操作:
1.先定义结构体类型,例如:
```
typedef struct {
int age;
char name[20];
} Person;
```
2.定义指针类型指向该结构体类型,例如:
```
Person *p;
```
3.申请指针数组空间,例如:
```
int count = 10;
p = (Person *)malloc(count * sizeof(Person));
```
其中,count为数组元素个数,sizeof(Person)表示每个元素的大小,用malloc函数申请的是一段连续的内存空间,所以需要将返回值进行强制类型转换为Person指针类型。
最后,记得使用完指针数组后要释放内存空间,使用free函数即可。
在结构体定义一个指针数组
在结构体中定义一个指针数组可以通过以下方式实现:使用结构体指针类型作为数组的元素类型,并为每个指针分配内存空间。例如,假设我们有一个结构体类型为"person",我们可以定义一个指针数组来存储多个"person"类型的指针:
typedef struct person {
// 结构体成员
} person;
person* array[10]; // 定义一个包含10个person指针的数组
在上述代码中,我们定义了一个名为"array"的指针数组,它包含了10个"person"类型的指针。每个指针可以指向一个"person"结构体对象,我们可以使用malloc函数为每个指针分配内存空间,以便存储相应的结构体对象。
请注意,这只是一个示例,实际使用时,您可能需要根据具体的需求和结构体定义进行相应的修改。