暂时写成这样了... int _atoi(char* a) { if(!a)return -1; int res=0,i=0,temp=0; if(a[0]=='-'||a[0]=='+') { ++i; } for(int i=0;i<strlen(a);++i) { if (a[i]<'0'||a[i]>'9') { break; } // temp=a[i]-48; // if(INT_MAX-res<<3<temp)break; res=10*res+a[i]-48; } if(a[0]=='-')return (-1)*res; else return res; }