1. 程式人生 > >不用第三方參數,交換2個參數的值的兩種宏函數

不用第三方參數,交換2個參數的值的兩種宏函數

三方 logs cto ring using def names 第三方 fine

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <vector>

using namespace std;

#define swap1(x,y) x=x+y,y=x-y,x=x-y

#define swap2(x,y) x^=y,y^=x,x^=y

int main()
{
    int a=1,b=2;
    //方法1
    swap1(a,b);
    cout << "a=" << a << " b="
<< b << endl; //方法2 a=1,b=2; swap2(a,b); cout << "a=" << a << " b=" << b << endl; }

不用第三方參數,交換2個參數的值的兩種宏函數