#include <stdio.h>
#include <malloc.h>
#include "string.h"
struct student
{
int age;
char *name;//char name[10];
};
/* 指针传递,省去拷贝时间 */
void stuprint(student *pst)
{
printf("形参地址%p\r\n",pst);
printf("pst->age [%d]\r\n",pst->age);
printf("pst->name[%s]\r\n",pst->name);
pst->age=pst->age +1;
printf("pst->age [%d]\r\n",pst->age);
printf("pst->name[%s]\r\n",pst->name);
}
/* 数值传递 */
void stuprint1(student st)
{
printf("形参地址%p\r\n",&st);
printf("st.age [%d]\r\n",st.age);
printf("st.name[%s]\r\n",st.name);
st.age=st.age+1;
printf("st.age [%d]\r\n",st.age);
printf("st.name[%s]\r\n",st.name);
}
int main()
{
student stu;
stu.age=90;
stu.name="kl";
printf("实参地址%p\r\n",&stu);
stuprint(&stu);
printf("main stu.age[%d]\r\n",stu.age);
return 0;
}