传递结构体变量,值传递(结果不变)
传递结构体变量必须进行初始化
值传递时,访问方式为 stu.num
#include<stdio.h>
#include<string.h>
#define format "%d\n%s\n%f\n%f\n%f\n"
struct student
{
int num;
char name[20];
};
void change( struct student stu );
int main()
{
struct student stu; //定义
stu.num = 1111; //初始化
strcpy(stu.name, "wh");
change(stu); //传参 修改
printf(format, stu.num, stu.name, stu.score[0], stu.score[1],stu.score[2]); //不变
printf("\n");
return 0;
}
void change(struct student stu)
{
stu.num = 222; //注意方式
strcpy(stu.name, "whs");
}
地址传递,变化
注意:
地址传递可以不进行初始化。
访问方式为 stu->num
#include<stdio.h>
#define format "%d\n%s\n%f\n%f\n%f\n"
struct student
{
int num;