结构体嵌套,指针形参,引用传参
Posted rtblogs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了结构体嵌套,指针形参,引用传参相关的知识,希望对你有一定的参考价值。
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 5 6 struct Student 7 { 8 int s_id; 9 string s_name; 10 int s_phonenum; 11 }; 12 13 struct Teacher 14 { 15 int m_id; 16 string m_name; 17 Student m_stu;//班长 18 Student starr[50];//班级学生 19 }; 20 void showinfo1(const Teacher *ter)//指针形参,加了const修饰指针,保证该函数不修改实参的值 21 { 22 cout << "老师姓名: " << ter->m_name << endl; 23 cout << "班级1号学生的电话: " << ter->starr[0].s_phonenum << endl; 24 } 25 26 void showinfo2( Teacher &ter)//引用传参 27 { 28 cout << "老师姓名: " << ter.m_name << endl; 29 cout << "班级1号学生的电话: " << ter.starr[0].s_phonenum << endl; 30 } 31 32 int main() 33 { 34 Student stu = { 1,"zhangsan",1467888 }; 35 Student syuarr[3] = 36 { 37 {2,"2hao同学",12222222}, 38 {3,"3#tongxue",1333333}, 39 {4,"4#tongxue",1444443} 40 }; 41 42 Teacher ter; 43 ter.m_id = 12; 44 ter.m_name = "wang"; 45 ter.m_stu = stu; 46 ter.starr[0] = syuarr[1]; 47 48 showinfo1(&ter); 49 showinfo2(ter); 50 51 system("pause"); 52 return 0; 53 }
以上是关于结构体嵌套,指针形参,引用传参的主要内容,如果未能解决你的问题,请参考以下文章
疑问C++结构体(数组)指针作为函数参数,会不会修改实参的值?
C 语言结构体 ( 结构体作为函数参数 | 结构体指针作为函数参数 )
C 语言结构体 ( 结构体中嵌套二级指针 | 为 结构体内的二级指针成员 分配内存 | 释放 结构体内的二级指针成员 内存 )