下面的程序有错吗?为什么错了,给出正确的程序。欢迎大家给出不同的答案。
#include <iostream>
using namespace std;
void swapxy(char *a,char *b)
{
int x = *a,y = *b;
x = x+y;
y = x-y;
x = x-y;
*a = x,*b = y;
}
void main(int argv,char argc[])
{
char a = 'A',b = 'B';
char &x = a,&y = b;
cout<<"before swaping:"<<a<<" "<<b<<endl;
swapxy(x,y);
cout<<"after swaping:"<<a<<" "<<b<<endl;
system("pause");
}