如何用c++创建n个结构体
时间: 2024-05-14 16:11:50 浏览: 59
可以使用如下代码实现创建n个结构体:
```
#include <stdio.h>
#include <stdlib.h>
struct student {
int id;
char name[20];
};
int main() {
int n = 5; // 假设需要创建5个结构体
struct student* students = (struct student*)malloc(n * sizeof(struct student)); // 动态申请内存空间
if (students == NULL) { // 判断内存是否申请成功
printf("内存申请失败!\n");
return -1;
}
for (int i = 0; i < n; i++) {
students[i].id = i + 1;
sprintf(students[i].name, "stu%d", i + 1);
printf("第%d个学生的ID是:%d,姓名是:%s\n", i + 1, students[i].id, students[i].name);
}
free(students); // 使用完毕后释放内存空间
return 0;
}
```
以上代码定义了一个名为student的结构体,包含一个整型变量id和一个字符数组name,用于存储学生的学号和姓名。然后使用malloc函数动态申请了内存空间,通过循环给每个结构体赋值,并输出结果。最后使用free函数释放动态申请的内存空间。
阅读全文