1.传值函数
函数通过参数传值来传递输入数据,参数通过传值机制来实现。
下面的程序是利用函数交换两个变量的值。
这是一个错误的程序
#include<cstdio>
#include<iostream>
using namespace std;
void swap(int a, int b);
int main()
{
int a, b;
cin >> a >> b;
swap(a, b);
cout << "a=" << a << " " << "b=" << " " << b;
}
void swap(int &a, int &b)
{
int c = a;
a = b;
b = c;
}
运行结果:
输入:3 4
输出:3 4
以上程序虽然swap函数交换了a,b的值,但main中的a,b并没有交换,这是因为swap函数的参数是传值参数(只是用来传值的,意思就是值改变swap函数中的值,不会返回到a,b上)。
下面是正确的
#include<cstdio>
#include<iostream>
using namespace std;
void swap(int &a, int &b);
int main()
{
int a, b;
cin >> a >> b;
swap(a, b);
cout << "a=" << a << " " << "b=" << " " << b;
}
void swap(int &a, int &b)
{
int c = a;
a = b;
b = c;
}
运行结果:
输入: 3 4
输出: 4 3
你可以看到我把swap函数中的值前面加了&(void swap(int &a,&b))
就这么多 有问题加qq1940423912