struct info
{char name[21];int age;};voidfun01(struct info s)//结构体作为形参{strcpy(s.name,"lisi");
s.age =20;printf("%s %d\n", s.name, s.age);}//形参voidfun02(struct info *s)//结构体指针作为形参{strcpy(s->name,"lisi");
s->age =20;//printf("%s %d\n", s.name, s.age);}struct info fun03()//结构体作为返回值{struct info s;strcpy(s.name,"lisi");
s.age =20;return s;};struct info *fun04()//结构体指针作为返回值{struct info s;strcpy(s.name,"lisi");
s.age =20;return&s;};intmain05(){struct info s ={"zhangsan",18};fun02(&s);//实参printf("%s %d\n", s.name, s.age);}
结构体嵌套结构体
struct info
{char name[21];int age;};voidfun01(struct info s)//结构体作为形参{strcpy(s.name,"lisi");
s.age =20;printf("%s %d\n", s.name, s.age);}//形参voidfun02(struct info *s)//结构体指针作为形参{strcpy(s->name,"lisi");
s->age =20;//printf("%s %d\n", s.name, s.age);}struct info fun03()//结构体作为返回值{struct info s;strcpy(s.name,"lisi");
s.age =20;return s;};struct info *fun04()//结构体指针作为返回值{struct info s;strcpy(s.name,"lisi");
s.age =20;return&s;};intmain05(){struct info s ={"zhangsan",18};fun02(&s);//实参printf("%s %d\n", s.name, s.age);}