#include "stdio.h"
int getSum(int a, int b) {
int sum;
unsigned int carry;
while (1)
{
sum = a ^ b; //1.第一次為沒有進位的值 2.後面相或補進位
carry = a & b; //需要進位對應的值
if (carry == 0) //直到沒有要進的位
{
break;
}
a = sum;
b = carry << 1; //每進一位後,前面的位數就不進了
}
return sum;
}
int main()
{
printf("%d", getSum(3, 5));
}