#include <iostream>
#include <string>
using namespace std;
int myAtoi(string str) {
string s = str;
int index = 0;
bool flag = true;
if (str.size() == 0){
return 0;
}
while (s[index] == ' '){
index ++;
}
if (str[index] == '+'){
flag = true;
index ++;
}
else if (str[index] == '-'){
flag = false;
index ++;
}
long long result = 0;
for (int i = index; i < s.size(); ++i){
if (s[i] > '9'|| s[i] < '0'){
break;
}
result *= 10;
result += (s[i] - '0');
if (result > INT_MAX){
break;
}
}
/*
if (result == -INT_MIN && !flag){
return INT_MIN;
}
*/
if (result > INT_MAX){
return flag ? INT_MAX : INT_MIN;
}
return flag ? result : (-result);
}
// 简化版(仅支持正数)
int myAtoiSimplify(string str) {
string s = str;
long long result = 0;
for (int i = 0; i < s.size(); ++i){
result *= 10;
result += (s[i] - '0');
}
return result;
}
int main(){
string s = "12345";
// 代码实现
int res = myAtoi(s);
int res2 = myAtoiSimplify(s);
// stoi
int res3 = stoi(s);
int ttt = 0;
return 0;
}