当前位置 : 主页 > 编程语言 > c语言 >

C++结构体作为函数参数传参的实例代码

来源:互联网 收集:自由互联 发布时间:2021-05-09
具体代码如下所示: #includeiostreamusing namespace std; #includestring //结构体struct Student { string name;int age;int score; }st3; /* *结构体作为函数参数传参 *///值传递void printStufdent1(struct Student st3) {cou

具体代码如下所示:

#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++结构体作为函数参数传参内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

网友评论