在函数中有形参与实参两种参数,当调用函数时实参的值传给形参时,称作值传递。
在值传递时,如果形参发生变化,并不会影响实参。
#include<iostream>
using namespace std;
//定义一个函数,实现两数交换
//由于两数交换不需要在最后输出一个数,就不需要使用类型,写个void代表无类型
void aaa(int shu1, int shu2)
{
cout << "交换前:" << endl;
cout << "shu1的值" << shu1 << endl;
cout << "shu2的值" << shu2 << endl;
int shu3 = shu1;
shu1 = shu2;
shu2 = shu3;
cout << "交换后:" << endl;
cout << "shu1的值" << shu1 << endl;
cout << "shu2的值" << shu2 << endl;
//return; 不需要返回值时可不返回值或不写return
}
int main()
{
int a = 10;
int b = 20;
cout << "a的值" << a << endl;
cout << "b的值" << b << endl;
//调用函数aaa
aaa(a, b);
//在调用过函数后,实参的值不发生改变
cout << "a的值" << a << endl;
cout << "b的值" << b << endl;
system("pause");
return 0;
}
所以在执行过函数后实参的值并不发生改变。