结构体初始化时报错,编译器无法对 16 行定义的 st 对象进行初始化,因为你没有进行初始化赋值。
尝试使用花括号 {} 进行初始化赋值吧。或者,换一个比较古老一点的编译器进行编译。
应该是你的结构体Student初始化定义传参要传你定义的三个变量,直接传Student他不识别
或许你可以试试用结构体指针,你这传递过去好像只是在函数内部修改数据,原来的数据不会改变。
//函数
void InputStudent(struct Student * stu);
//主函数使用
InputStudent(&st);
```
呃,你这样InputStudent复制传参根本无法改变实参的值,改成指针吧