宏定义实现数据交换



宏定义实现数据交换实例。

#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;
}