首页 > 其他 > 详细

形参和实参传递函数对比

时间:2017-06-18 12:56:16      阅读:225      评论:0      收藏:0      [点我收藏+]
#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;

}

 

形参和实参传递函数对比

原文:http://www.cnblogs.com/cheshl/p/7043788.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!