反转32 signed int
int reverse(int x) {
long num=0;
while(x!=0){
num=num*10+x%10;
x/=10;
if(num<INT_MIN||num>INT_MAX){
cout<<"??"<<endl;
return 0;
}
}
return (int)num;
}
INT_MIN INT_MAX 定义在<limits.h>中
INT_MAX 0x7fffffff
该解法不具有通用性,如果是int64为,可能出问题。
下午晚上重写
网友评论