C语言版:
int reverse(int x) {
int n;
int val = 0;
while(x){
n = x % 10;
x /= 10;
//防止数据溢出
if (val > INT_MAX/10 || (val == INT_MAX / 10 && n > 7)) return 0;
if (val < INT_MIN/10 || (val == INT_MIN / 10 && n < -8)) return 0;
val = val * 10 + n;
}
return val;
}
c++版:
class Solution {
public:
int reverse(int x) {
int n;
int val = 0;
while(x){
n = x % 10;
x /= 10;
if (val > INT_MAX/10 || (val == INT_MAX / 10 && n > 7)) return 0;
if (val < INT_MIN/10 || (val == INT_MIN / 10 && n < -8)) return 0;
val = val * 10 + n;
}
return val;
}
};
C语言与C++实现整数反转
本文提供了C语言和C++两种版本的代码,用于实现整数的反转功能。通过循环处理每一位数字,并检查反转过程中是否发生溢出,确保了算法的正确性和稳定性。

162

被折叠的 条评论
为什么被折叠?



