我还在想着怎么转换为字符串,然后怎么自己处理溢出问题。
它的解答巧妙的使用了计算机的特性。
int reverse(int x) {
long long val = 0;
int re = 0;
do {
val = val*10 + x%10;
x /= 10;
} while(x);
re = (val > INT_MAX || val < INT_MIN) ? 0 : val;
return(re);
}