如何在C / C ++程序中不使用算术运算符的情况下将两个整数相加?
在本教程中,我们将讨论一个程序,以了解如何在不使用C / C ++的算术运算符的情况下对两个整数求和。
要在不使用算术运算符的情况下相加两个整数,可以使用指针或按位运算符来实现。
示例
使用指针
#include <iostream>using namespace std;
int sum(int a, int b){
int *p = &a;
return (int)&p[b];
}
int main() {
int add = sum(2,3);
cout << add << endl;
return 0;
}
输出结果
5
示例
使用按位运算符
#include <iostream>using namespace std;
int sum(int a, int b){
int s = a ^ b;
int carry = a & b;
if (carry == 0)
return s;
else
return sum(s, carry << 1);
}
int main() {
int add = sum(2,3);
cout << add << endl;
return 0;
}
输出结果
5
以上是 如何在C / C ++程序中不使用算术运算符的情况下将两个整数相加? 的全部内容, 来源链接: utcz.com/z/317120.html