int G_flag =0;
long long strToDig(const char*digit, bool minus)
{
long long num = 0;
if (*digit == '\0')
{
G_flag = 1;
cout << "空字符串" << endl;
}
while (*digit != '\0')
{
if ('0'<=*digit&&*digit<'9')
{
int flag = minus ? -1 : 1;
num = num * 10 + flag*(*digit - '0');
if (!minus&&num>0x7FFFFFFF ||minus&&num<(signed)0x80000000)
{
cout << "转换整数溢出" << endl;
num = 0;
break;
}
digit++;
}
else
{
num = 0;
break;
}
}
return num;
}
int StrToInt(const char*string)
{
long long num = 0;
bool minus = false;
if (string != NULL&&*string != '\0')
{
if (*string == '+')
string++;
else if (*string == '-')
{
minus = true;
string++;
}
}
if (string != '\0')
{
num = strToDig(string, minus);
}
return (int)num;
}