结构体数组,结构体指针
时间: 2024-03-25 20:34:16 浏览: 93
结构体数组是一种数据结构,它是由多个相同类型的结构体元素组成的数组。每个结构体元素可以包含多个不同类型的成员变量,这些成员变量可以用来表示一个实体的多个属性。
结构体指针是指向结构体的指针变量。通过结构体指针,可以方便地对结构体进行操作和访问。可以使用指针来访问结构体的成员变量,也可以通过指针修改结构体的值。
例如,下面是一个示例代码,展示了如何定义和使用结构体数组和结构体指针:
```c
#include <stdio.h>
// 定义一个结构体
struct Person {
char name[20];
int age;
};
int main() {
// 定义一个结构体数组
struct Person people[3];
// 初始化结构体数组
strcpy(people[0].name, "Alice");
people[0].age = 20;
strcpy(people[1].name, "Bob");
people[1].age = 25;
strcpy(people[2].name, "Charlie");
people[2].age = 30;
// 遍历结构体数组并打印每个人的信息
for (int i = 0; i < 3; i++) {
printf("Person %d: Name = %s, Age = %d\n", i+1, people[i].name, people[i].age);
}
// 定义一个结构体指针
struct Person *personPtr;
// 将结构体数组的地址赋给结构体指针
personPtr = people;
// 通过结构体指针访问和修改结构体的值
printf("First person's name: %s\n", personPtr->name);
printf("First person's age: %d\n", personPtr->age);
// 修改结构体的值
strcpy(personPtr->name, "David");
personPtr->age = 35;
// 通过结构体数组访问修改后的值
printf("First person's name after modification: %s\n", people[0].name);
printf("First person's age after modification: %d\n", people[0].age);
return 0;
}
```
阅读全文
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)