面试题47:不用加减乘除做加法

题目描述

写一个函数,求两个整数之和,要求在函数体内不得使用+、-、x、/ 四则运算符号。

题目分析

剑指Offer(纪念版)P237

代码实现

int Add(int num1, int num2)
{
    int sum, carry;
    do
    {
        sum = num1 ^ num2;
        carry = (num1 & num2) << 1;

        num1 = sum;
        num2 = carry;
    }
    while(num2 != 0);

    return num1;
}

  

posted @ 2015-11-19 16:33  枯桃  阅读(216)  评论(0编辑  收藏  举报