如何用C++代码实现这个题目 结构体指针运用举例。 【输入样例】 无 【输出样例】 Name Sex Score (注意:Name Sex Score之间一个空格) xiaoming f 356 xiaoliang f 350 xiaohong m 0
时间: 2024-11-15 20:22:28 浏览: 18
在C++中,我们可以创建一个结构体(struct),然后定义一个结构体指针,用于存储并操作这些结构体对象。假设我们有一个名为`Student`的结构体,包含姓名(Name)、性别(Sex)和分数(Score)。以下是代码示例:
```cpp
#include <iostream>
#include <string>
// 定义结构体 Student
struct Student {
std::string name;
char sex; // 'f' for female, 'm' for male
int score;
};
int main() {
// 创建结构体指针数组
Student* students = new Student[3]; // 三名学生的内存空间
// 分配每个学生的信息并初始化
students[0] = {"xiaoming", 'f', 356};
students[1] = {"xiaoliang", 'f', 350};
students[2] = {"xiaohong", 'm', 0}; // 0分是一个示例
// 打印每个学生的数据
for (int i = 0; i < 3; ++i) {
std::cout << students[i].name << " " << students[i].sex << " " << students[i].score << "\n";
}
// 释放动态分配的内存
delete[] students;
return 0;
}
```
在这个例子中,`students`是一个指向`Student`类型的指针数组。通过索引访问每个元素,我们可以直接操作`name`、`sex`和`score`字段。当不再需要这些指针指向的数据时,记得使用`delete[]`释放内存以避免内存泄漏。
阅读全文