位运算实现加法运算

Calculate the sum of two integers a and b, but you are not allowed to use the operator + and -.

Example:
Given a = 1 and b = 2, return 3.

int getSum(int a, int b) {
    int ans;
    while(b)
    {
        ans = a^b;
        b = (a&b)<<1;
        a = ans;
    }
    return ans;
}

参考:

http://blog.csdn.net/hackbuteer1/article/details/7390093

原文地址:https://www.cnblogs.com/wxisme/p/5940679.html