您的位置:首页 > 其它

C-关于结构体变量和结构体指针变量函数传递值得问题

2014-05-29 10:18 337 查看
/*
2014年5月29日10:13:35
关于结构体变量和结构体指针变量函数的值传递
*/#include<stdio.h>
#include<string.h>

struct Stduent
{
int age ;
char sex[100] ;			// 这表示顶一个一个结构体
char name[100];			//这个数据的类型是 struct Stduent  类型
};

void InputStduent (struct Stduent  * pst) //输入函数
{
pst->age = 18;          //给年龄赋值
strcpy(pst->sex,"男");// 给字符创sex赋值
strcpy(pst->name ,"刘荣平"); //给字符串name 赋值
}

void OnputStduent (struct Stduent  stu) //输出函数
{
printf("%d  %s  %s",stu.age,stu.sex,stu.name);
}

int main (void)
{
struct Stduent st;  //定义一个struct Stduent 类型变量数据  变量名为 st
InputStduent(&st);//吧st的地址发送给 输入函数的 pst
OnputStduent(st); //把st的值赋值给输出函数的stu
return 0;
}
/*
总结:
要想在子函数中修改主函数的值,就必须把主函数要修改的值的地址发给函数的形参

如果是子函数是输出主函数的值,就不需要发送地址,直接发送值就可以

在VC 6.0 输出的结果是:
--------------------

18  男  刘荣平Press any key to continue

--------------------
*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: