第二十题
题目:
输入一个表示整数的字符串,把该字符串转换成整数并输出。
分析:这道题主要要考虑全面即可,比如“-213”,“+234”,“-pox”,“123”
分别输出为-213, 234,错误,123
代码:
#include<iostream>
using namespace std;
int char2int(char *b, int length)
{
int startIndex = 0;
int PosiNeg;
if(b[0]=='-')
{
startIndex = 1;
PosiNeg = -1;
}
else if(b[0]=='+')
{
startIndex = 1;
PosiNeg = 1;
}
int value = 0;
for(int i=startIndex; i<length;i++)
{
if(b[i]<='9'&&b[i]>='0')
value = (b[i]-'0')+value*10;
else
{
cout<<"wrong format";
return -1;
}
}
return value*PosiNeg;
}
int main()
{
char* b = "-13423";
cout<<char2int(b,strlen(b));
return 0;
}