首页 新闻 赞助 找找看

结构体怎样进行传参

0
悬赏园豆:30 [已解决问题] 解决于 2013-06-16 12:52

我在主函数中定义用结构体定义的变量,怎样传参到自己定义的函数中,还有就是什么叫结构体的不完全类型?谢谢

typedef struct studentMessage
{
int stuCount;//学号
char name[12];//姓名
int grade;//年级
int classNum;//班级
char phoneNum[12];//手机号码
char address[20];//住址

//成绩
int Marktotal;//总成绩
float average;//平均分
int MarkCh;//语文
int MarkMath;//数学
int MarkEn;//英语
int rankNum;//排名
}stuM;
struct stuM;  //这是我的结构体

int main(void)

{

  stuM student[10];

} 

一只小小的菜鸟的主页 一只小小的菜鸟 | 初学一级 | 园豆:101
提问于:2012-04-15 17:14
< >
分享
最佳答案
0

在自己写的函数中的形参列表搞一个形参不就行了。

比如:

 void function(stuM &studentMessageData)

{

....

}

 

然后调用的时候

function(这里填上你在main函数中定义的结构体变量);

 

补充:结构体传参(包括成员变量传参),默认是按值传递,如果要按引用,必须前面加&

 

 

结构体的不完全类型:这个东西我看过2本讲C语言的语法的书,没看到过。。。

收获园豆:30
宇宙联盟委员 | 初学一级 |园豆:34 | 2012-10-21 22:14
其他回答(1)
0

传地址比较好,不然会造成拷贝,而且如果结构体中有动态申请的存储,还要自行控制拷贝动作防止只是发生浅拷贝。不完全类型:

struct s {struct t *pt;}; 这里的t是不完全类型,不知道你说的结构体的不完全类型是否是这个意思。
zsounder | 园豆:2819 (老鸟四级) | 2012-04-15 17:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册