English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C에서 / C ++에서 산술 연산자를 사용하지 않고 두 정수를 더하는 방법은 무엇인가요?

아래는 두 숫자를 계산자 연산자 없이 더하는 예제입니다.

예제

#include <iostream>
#include <cmath>
using namespace std;
int add(int val1, int val2) {
   while(val2 != 0) {
      int c = val1 & val2;
      val1 = val1 ^ val2;
      val2 = c << 1;
   }
   return val1;
}
int main() {
   cout << "The sum of two numbers: " << add(28, 8);
   return 0;
}

출력 결과

Two numbers sum: 36

위 프로그램에서 함수 add()는 두 int 타입 파라미터를 정의했습니다. 두 숫자의 합은 add()에编码되어 있습니다

int add(int val1, int val2) {
   while(val2 != 0) {
      int c = val1 & val2;
      val1 = val1 ^ val2;
      val2 = c << 1;
   }
   return val1;
}

main() 함수에서 함수 add()를 호출하여 결과를 출력합니다

cout << "The sum of two numbers: " << add(28, 8);
MySql 가이드