class Solution {
public:
int Add(int num1, int num2)//将加法分为进位的部分和不进位的部分,和为两部分之和
{
int n1 = (num1 & num2) << 1;//进位的部分
int n2 = num1 ^ num2;//不用进位的部分
while(n1 & n2){//当进位的部分和不进位的部分有一个为0时,结果为不为0的那一个
num1 = n1;
num2 = n2;
n1 = (num1 & num2) << 1;
n2 = num1 ^ num2;
}
return n1|n2;
}
};
写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号
最新推荐文章于 2019-05-03 17:16:08 发布