c语言结构体函数参数,C++结构体类型作为函数参数

本文介绍了三种在C++中传递结构体数据到函数的方法:直接使用结构体变量、通过结构体指针以及利用结构体引用。通过示例代码展示了每种方法的实现,并对比了它们的效率和可读性。结构体包含学生学号、姓名和三门课程成绩。指针方式在效率和可读性上表现优秀。
摘要由CSDN通过智能技术生成

将一个结构体变量中的数据传递给另一个函数,有下列3种方法:

用结构体变量名作参数。一般较少用这种方法。

用指向结构体变量的指针作实参,将结构体变量的地址传给形参。

用结构体变量的引用变量作函数参数。

下面通过一个简单的例子来说明,并对它们进行比较。

【例7.5】有一个结构体变量stu,内含学生学号、姓名和3门课的成绩。要求在main函数中为各成员赋值,在另一函数print中将它们的值输出。

1) 用结构体变量作函数参数。

#include

#include

using namespace std;

struct Student//声明结构体类型Student

{

int num;

char name[20];

float score[3];

};

int main( )

{

void print(Student); //函数声明,形参类型为结构体Student

Student stu; //定义结构体变量

stu.num=12345; //以下5行对结构体变量各成员赋值

stu.name="Li Fung";

stu.score[0]=67.5;

stu.score[1]=89;

stu.score[2]=78.5;

print(stu); //调用print函数,输出stu各成员的值

return 0;

}

void print(Student st)

{

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值