在 C++ 中,如何将两个整数组合(注意:不是相加)为一个大整数?
例如:
int1 = 123;
int2 = 456;
有没有一个函数可以把这两个数字变成123456?
编辑:
我没有解释清楚。如果 int2 为 0,那么答案应该是 123,而不是 1230。实际上,如果 int2 超过 32 位限制,则 int1(左侧的数字)只有一个值。所以当 int2 为 0 时, int1 为 0(或垃圾,我不确定)。
最佳答案
第一个数乘以十的幂是最小的,大于第二个数:
int combine(int a, int b) {
int times = 1;
while (times <= b)
times *= 10;
return a*times + b;
}
关于c++ - 将两个数字合二为一。示例 : 123 and 456 become 123456,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2611081/