struct study_time
{
int h;
int m;
int s;
};
自定义函数,实现结构体成员信息输入;
(2种参数版本,实现结构体成员信息输入,引用版本和指针版本)
自定义函数,实现结构体成员信息输出;
(3种参数版本:按值传递、地址传递、引用传递)
自定义函数,返回结构体类型,形参为两个结构体数据
study_time get1(study_time s1,study_time s2);
自定义函数,返回结构体类型,形参为两个结构体指针;
study_time get2(study_time *s1,study_time *s2);
自定义函数,返回结构体类型引用,形参为两个结构体类型引用
study_time & get3(study_time &s1,const study_time &s2,const study_time &s3);
返回引用类型形参s1
struct study_time
{
int h;
int m;
int s;
};
//自定义函数,实现结构体成员信息输入;
//(2种参数版本,实现结构体成员信息输入,引用版本和指针版本)
void input(study_time &st,int h,int m,int s)
{
st.h=h;
st.m=m;
st.s=s;
}
void input(study_time *st,int h,int m,int s)
{
st->h=h;
st->m=m;
st->s=s;
}
//自定义函数,实现结构体成员信息输出;
//(3种参数版本:按值传递、地址传递、引用传递)
void output(const study_time *st)
{
cout<<"st->h:"<<st->h;
cout<<"st->m:"<<st->m;
cout<<"st->s:"<<st->s;
}
void output(const study_time &st)
{
cout<<"st.h:"<<st.h;
cout<<"st.m:"<<st.m;
cout<<"st.s:"<<st.s;
}
void output(const study_time st)
{
cout<<"st.h:"<<st.h;
cout<<"st.m:"<<st.m;
cout<<"st.s:"<<st.s;
}
//自定义函数,返回结构体类型,形参为两个结构体数据
study_time get1(study_time s1,study_time s2)
{
study_time s3;
s3.h = s1.h + s2.h;
s3.m = s1.m + s2.m;
s3.s = s1.s + s2.s;
return s3;
}
//自定义函数,返回结构体类型,形参为两个结构体指针;
study_time get2(study_time *s1,study_time *s2)
{
study_time s3;
s3.h = s1->h + s2->h;
s3.m = s1->m + s2->m;
s3.s = s1->s + s2->s;
return s3;
}
//自定义函数,返回结构体类型引用,形参为两个结构体类型引用
study_time & get3(study_time &s1,const study_time &s2,const study_time &s3)
{
s1.h = s2.h + s3.h;
s1.m = s2.m + s3.m;
s1.s = s2.s + s3.s;
return s1;
}
//返回引用类型形参s1