【C++】值传递

函数值传递的特点:值传递过程中即使形参改变也不会改变实参

没有返回值的函数用" void "定义

下面是一个实例:

cpp 复制代码
#include<iostream>
using namespace std;

//值传递
//定义函数,实现两个数字进行交换函数

//如果函数不需要返回值,声明可以写成void
void swap(int num1, int num2)
{
	cout << "交换前:" << endl;
	cout << "num1 = " << num1 << endl;
	cout << "num2 = " << num2 << endl;

	int temp = num1;
	num1 = num2;
	num2 = temp;

	cout << "交换后:" << endl;
	cout << "num1 = " << num1 << endl;
	cout << "num2 = " << num2 << endl;

	//return; 函数不需要返回值的时候可以不写return
}

int main() {

	int a = 10;
	int b = 20;

	cout << "a = " << a << endl;
	cout << "b = " << b << endl;

	//当我们做值传递的时候,函数的形参发生任何改变不会影响实参
	swap(a, b);

	cout << "a = " << a << endl;
	cout << "b = " << b << endl;

	system("pause");

	return 0;

}

输出结果为

相关推荐
ysa0510303 分钟前
数论基础知识和模板
数据结构·c++·笔记·算法
GEEK零零七16 分钟前
Leetcode 1103. 分糖果 II
数学·算法·leetcode·等差数列
showyoui27 分钟前
Python 闭包(Closure)实战总结
开发语言·python
今天背单词了吗98032 分钟前
算法学习笔记:7.Dijkstra 算法——从原理到实战,涵盖 LeetCode 与考研 408 例题
java·开发语言·数据结构·笔记·算法
Eiceblue34 分钟前
使用 C# 发送电子邮件(支持普通文本、HTML 和附件)
开发语言·c#·html·visual studio
小小小小王王王39 分钟前
hello判断
开发语言·c#
苦夏木禾2 小时前
js请求避免缓存的三种方式
开发语言·javascript·缓存
重庆小透明2 小时前
力扣刷题记录【1】146.LRU缓存
java·后端·学习·算法·leetcode·缓存
超级土豆粉2 小时前
Turndown.js: 优雅地将 HTML 转换为 Markdown
开发语言·javascript·html
desssq2 小时前
力扣:70. 爬楼梯
算法·leetcode·职场和发展