现在的位置: 首页 > 综合 > 正文

[搜狗笔试]宏定义实现数据交换

2013年07月11日 ⁄ 综合 ⁄ 共 424字 ⁄ 字号 评论关闭
#include <iostream>

using namespace std;

//单行写

#define swapdata1(a,b) (a)=(a)^(b),(b)=(a)^(b),(a)=(a)^(b);

#define swapdata2(a,b) {(a)=(a)^(b),(b)=(a)^(b),(a)=(a)^(b);}

#define swapdata3(a,b) {int temp;temp=(a);(a)=(b);(b)=temp;}

//多行写

#define swapdata4(a,b) \
(a) = (a)^(b); \
(b) = (a)^(b); \
(a) = (a)^(b);

#define swapdata5(a,b) \
int temp; \
temp = (a); \
(a) = (b); \
(b) = temp;

int main()
{
    int a,b;
    while(cin>>a>>b)
    {
        swapdata5(a,b);
        cout<<endl<<a<<" "<<b<<endl;
    }
    return 0;
}

抱歉!评论已关闭.