怎么实现在头文件中定义结构体,在源文件中实现结构体赋值
时间: 2024-05-05 13:22:11 浏览: 109
使用pybind11封装C++结构体作为参数的函数实现步骤
在头文件中定义结构体时,可以不声明结构体变量,只定义结构体类型,例如:
```c
// 在头文件中定义结构体类型
typedef struct {
int id;
char name[20];
float score;
} Student;
```
然后在源文件中,可以定义结构体变量并对其赋值,例如:
```c
#include "student.h"
void main() {
// 定义结构体变量并赋值
Student stu = {1, "张三", 89.5};
// 输出结构体变量的值
printf("学号:%d\n", stu.id);
printf("姓名:%s\n", stu.name);
printf("成绩:%f\n", stu.score);
}
```
需要注意的是,如果在头文件中定义结构体类型时,使用了关键字 `typedef`,那么在源文件中定义结构体变量时,就不需要再写 `typedef`。
阅读全文