实现两个变量值的交换。 swap(a,b);//调用交换函数 cout>>a>>b;
时间: 2024-05-15 10:13:42 浏览: 11
可以使用如下代码实现两个变量值的交换:
```c++
void swap(int &a, int &b) {
int temp = a;
a = b;
b = temp;
}
int main() {
int a = 10, b = 20;
swap(a, b);
cout << a << " " << b << endl; // 输出 20 10
return 0;
}
```
在 `swap` 函数中,使用一个临时变量 `temp` 存储 `a` 的值,然后将 `b` 的值赋给 `a`,最后将 `temp` 的值赋给 `b`。这样就实现了 `a` 和 `b` 值的交换。在 `main` 函数中,我们调用 `swap` 函数交换 `a` 和 `b` 的值,并输出结果。
相关问题
编写程序定义swap函数,利用指针实现两个变量值的交换
好的,下面是一个示例程序:
```c++
#include <iostream>
void swap(int* a, int* b);
int main()
{
int x = 10, y = 20;
std::cout << "Before swap: x = " << x << ", y = " << y << std::endl;
swap(&x, &y);
std::cout << "After swap: x = " << x << ", y = " << y << std::endl;
return 0;
}
void swap(int* a, int* b)
{
int temp = *a;
*a = *b;
*b = temp;
}
```
这个程序定义了一个 `swap` 函数,接受两个指针作为参数,利用指针实现了两个变量的交换。在主函数中,我们定义了两个变量 `x` 和 `y`,并打印出交换前后的值。在调用 `swap` 函数时,我们传递了 `x` 和 `y` 的地址,使得函数内部可以直接访问并修改这两个变量的值。运行程序,输出结果如下:
```
Before swap: x = 10, y = 20
After swap: x = 20, y = 10
```
可以看到,经过 `swap` 函数的处理,变量 `x` 和 `y` 的值已经成功交换了。
使用函数模板实现swap(&x,&y)交换两个实参变量a和b的指
好的,下面是使用函数模板实现swap(&x,&y)交换两个实参变量a和b的指:
```c++
template <typename T>
void swap(T* a, T* b) {
T temp = *a;
*a = *b;
*b = temp;
}
```
调用该函数时,只需要传入两个实参变量的地址即可:
```c++
int a = 1, b = 2;
swap(&a, &b);
cout << "a = " << a << ", b = " << b << endl;
```
输出结果为:
```
a = 2, b = 1
```
注意,使用函数模板时,需要在函数名前加上 `template <typename T>`,并在函数中使用 `T` 表示模板类型。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)