这篇主要是来记录C/C++有意思的题目。部分程序能有很高的效率1、将两个变量的值对调,而不使用中间变量。
- void swap(int a, int b)
- {
- a = a + b;
- b = a - b;
- a = a - b;
- }
- void swap(int a, int b)
- {
- a ^= b;
- b ^= a;
- a ^= b;
- }
2、一个判断2个整数是否相等的函数
- int equal(int a, int b)
- {
- return !(a ^ b);
- }
3、一个判断是否为整数的函数
- int isPositive(int a)
- {
- return !(a << 31 + !a);
- }