C/C++多种方法交换两个变量的值

1、传指针

#include <iostream>
using namespace std;
void swap(int *x, int *y)
{
    
    
    int temp;
    temp = *x;
    *x = *y;
    *y = temp;
}
int main()
{
    
    
    int a = 4, b = 5;
    cout << "a=" << a << " b=" << b << endl;
    swap(&a, &b);
    cout << "a=" << a << " b=" << b << endl;
    return 0;
}

2、宏定义函数,适用于各种类型变量的交换

#include <iostream>
using namespace std;
#define SWAP(x,y,temp)(temp=x, x=y, y=temp)
int main()
{
    
    
    int a = 4, b = 5;
    cout << "a=" << a << " b=" << b << endl;
    int temp;
    SWAP(a,b,temp);
    cout << "a=" << a << " b=" << b << endl;
    return 0;
}

3、传引用

#include <iostream>
using namespace std;
void swap(int &x, int &y)//引用就是别名
{
    
    
    int temp;
    temp = x;
    x = y;
    y = temp;
}
int main()
{
    
    
    int a = 4, b = 5;
    cout << "a=" << a << " b=" << b << endl;
    swap(a, b);
    cout << "a=" << a << " b=" << b << endl;
    return 0;
}

4、使用C++函数,适用于各种类型变量的交换

#include <iostream>
using namespace std;

int main()
{
    
    
    int a = 4, b = 5;
    cout << "a=" << a << " b=" << b << endl;
    swap(a, b);
    cout << "a=" << a << " b=" << b << endl;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_44378854/article/details/109298685