具体代码如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
#include<iostream> using namespace std; #include<string> //结构体 struct Student { string name; int age; int score; }st3; /* *结构体作为函数参数传参 */ //值传递 void printStufdent1( struct Student st3) { cout << "子函数" << endl; st3.age = 100; cout << "名字:" << st3.name << " 年龄:" << st3.age << " 分数:" << st3.score << endl; } //地址传递 void printStufdent2( struct Student * p) { p->age = 200; cout << "子函数" << endl; cout << "名字:" << p->name << " 年龄:" << p->age << " 分数:" << p->score << endl; } int main() { struct Student st1; st1.name = "zhangsan" ; st1.age = 18; st1.score = 60; //cout << "名字" << st1.name << "年龄" << st1.age << "分数" << st1.score<< endl; struct Student st2={ "李四" ,20,70}; // cout << "名字" << st2.name << "年龄" << st2.age << "分数" << st2.score<< endl; st3.name = "王五" ; st3.age = 19; st3.score = 59; printStufdent1(st3); cout << "main函数" << endl; cout << "名字:" << st3.name << " 年龄:" << st3.age << " 分数:" << st3.score << endl; printStufdent2(&st3); cout << "main函数" << endl; cout << "名字:" << st3.name << " 年龄:" << st3.age << " 分数:" << st3.score << endl; system ( "pause" ); } |
从结果我们知道结构体作为函数的参数传参有两种形式
到此这篇关于C++结构体作为函数参数传参的实例代码的文章就介绍到这了,更多相关C++结构体作为函数参数传参内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/ywl470812087/article/details/106955768