c++如何给两个变量交换值
时间: 2024-01-18 12:39:55 浏览: 45
对于这个问题,我可以给出以下两种方法:
方法一:使用第三个变量
```
int a = 1, b = 2;
int tmp = a;
a = b;
b = tmp;
```
方法二:不使用第三个变量
```
int a = 1, b = 2;
a = a + b;
b = a - b;
a = a - b;
```
注意,以上方法只适用于交换基本数据类型的值。对于其他数据结构(如数组、结构体等),则需要使用不同的方法来实现交换。
相关问题
c++交换两个变量的值
可以使用一个临时变量来交换两个变量的值,代码如下:
```
int a = 1;
int b = 2;
int temp = a;
a = b;
b = temp;
```
交换后,a 的值为 2,b 的值为 1。
c++通过指针交换两个变量的值
可以通过指针交换两个变量的值,代码如下:
```c
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
```
在调用 swap 函数时,将两个变量的地址作为参数传入即可:
```c
int main() {
int a = 1;
int b = 2;
printf("Before swap: a=%d, b=%d\n", a, b);
swap(&a, &b);
printf("After swap: a=%d, b=%d\n", a, b);
return 0;
}
```
输出结果为:
```
Before swap: a=1, b=2
After swap: a=2, b=1
```