考大家一道面试题!

来源:百度知道 编辑:UC知道 时间:2024/05/21 14:02:18
int a=5;
int b=6;

在不借助中间变量的情况下交换这二个值!

a=6;
b=5;
交换好了

a= a + b ;
b = a - b ;
a = a - b ;
or
b=a+b;
a=b-a;
b=b-a;

这个网上多的很
a ^= b;
b ^= a;
a ^= b;

a = a + b ;
b = a - b ;
a = a - b ;

就这道题来说
1楼的答案最好~~
呵呵
不过估计面试的要疯了

a=a+b<<8;
b=(uchar)a;
a=(uchar)(a>>8);