注意:处理正负号,可以处理正负号,字母打头,-+打头,以及其中字符串中间含有非法字符的情况。
bool change(char *str,int &num)
{
num = 0;
int mul = 1;
if(*str=='-'||*str=='+')
{
if(*str=='-')
mul = -1;
str++;
if(*str=='\0')//防止出现”-“,”+”的情况
return false;
}
while(*str!='\0'&&*str>='0'&&*str<='9')
{
num = num*10+*str-'0';
str++;
}
if(*str=='\0')
{
num = mul*num;
return true;
}
else return false;
}