将该数字变为字符串,之后翻转字符串,判断其是否溢出int即可。
class Solution {
public:
string s;
int reverse(int x) {
s=to_string(x); //转换为字符串
if(x<0){
s=s.substr(1);
s=string(s.rbegin(),s.rend());
if(stol(s)>2147483648) return 0; //溢出则返回0
return stol(s)*-1;
}
s=string(s.rbegin(),s.rend());
if(stol(s)>2147483647) return 0; //溢出则返回0
return stol(s);
}
};