atoi()函数将数字字符串转换为数字,注意符号的判断。
int my_atoi(char* src)
{
int sign=1; //符号变量
int sum=0;
if('-'==*src)
{
sign=-1;
src++;
}
else if('+'==*src)
{
sign=1;
src++;
}
while(*src>='0'&&*src<='9')
{
sum=sum*10+*src-'0';
src++;
}
sum=sign*sum;
return sum;
}
itoa()函数将数字转换为字符串,注意加上空字符'\0'。
char* my_itoa(int num)
{
int sign=1;
if(num<0)
{
sign=-1;
}
num=sign*num;
int n=CountNum(num);
char* s=new char[n+1];
int k=n;
s[n]='\0';
while(num>0)
{
s[--n]=num%10+'0';
num=num/10;
}
return s;
}
//计算一个整数的位数
int CountNum(int num)
{
int n=0;
while(num>0)
{
n++;
num=num/10;
}
return n;
}