atoi和itoa函数的实现
2013-09-16 14:48
274 查看
1 itoa的实现
//1234→4321(存储:str=n%radix,n=n/radix)→ 1234
//todo: 把含有 负数的内容写上去就好了
char * my_itoa2( int num, char *string, int radix )
{
char* str=string;
//得到翻转的字符串
while(num)
{
*str=num%radix+'0'; //*str=num%radix-'0'; 就是错误的了,哈哈。
//cout<<*str<<endl;
num=num/radix;
str++;
}
*str='\0';
char temp;
int len=strlen(str);
for(int i=0;i<len/2;i++)
{
temp=str[i];
str[i]=str[len-1-i];
str[len-1-i]=temp;
}
return string;
}
2 atoi的实现
// num=num*10+*str;
//todo:考虑 过界的情况。
int my_atoi( char *str )
{
if(str==NULL) return 0;
int num=0,flag=1;
if(*str=='-')
{
flag=-1;
}
else
{
num=*str-'0';
}
str++;
//while(*st>='0'&&*str<='9')
while(*str!='\0')
{
num=num*10+*str-'0';
str++;
}
return num*flag;
}
3 测试代码
int main()
{
char *s="-123567890";
cout<<my_atoi(s)<<endl;
int a=1234;
//*char str[20]={'\0'}; //需要预先定义好的
char *str=new char[20];
str=my_itoa2(a,str,10);
cout<<str<<endl;
return 0;
}
//1234→4321(存储:str=n%radix,n=n/radix)→ 1234
//todo: 把含有 负数的内容写上去就好了
char * my_itoa2( int num, char *string, int radix )
{
char* str=string;
//得到翻转的字符串
while(num)
{
*str=num%radix+'0'; //*str=num%radix-'0'; 就是错误的了,哈哈。
//cout<<*str<<endl;
num=num/radix;
str++;
}
*str='\0';
char temp;
int len=strlen(str);
for(int i=0;i<len/2;i++)
{
temp=str[i];
str[i]=str[len-1-i];
str[len-1-i]=temp;
}
return string;
}
2 atoi的实现
// num=num*10+*str;
//todo:考虑 过界的情况。
int my_atoi( char *str )
{
if(str==NULL) return 0;
int num=0,flag=1;
if(*str=='-')
{
flag=-1;
}
else
{
num=*str-'0';
}
str++;
//while(*st>='0'&&*str<='9')
while(*str!='\0')
{
num=num*10+*str-'0';
str++;
}
return num*flag;
}
3 测试代码
int main()
{
char *s="-123567890";
cout<<my_atoi(s)<<endl;
int a=1234;
//*char str[20]={'\0'}; //需要预先定义好的
char *str=new char[20];
str=my_itoa2(a,str,10);
cout<<str<<endl;
return 0;
}
相关文章推荐
- 自己编写代码实现atoi和itoa函数的功能
- atoi和itoa函数实现
- atoi和itoa函数的实现方法
- atoi和itoa函数的实现
- atoi和itoa函数的实现
- strcpy,strcat, strcmp, atoi, itoa函数原型实现
- strcpy,strcat, strcmp, atoi, itoa函数原型实现
- 【练习题】atoi和itoa函数的实现
- C实现memomove,memocpy,memoicmp,atoi,itoa函数
- atoi和itoa函数的实现方法
- 模拟实现atoi和itoa函数
- atoi和itoa函数的实现方法
- atoi和itoa函数的实现方法
- strcpy,strcat, strcmp, atoi, itoa函数原型实现
- atoi和itoa函数的实现
- c语言实现atoi和itoa函数。
- atoi和itoa函数实现
- 自己编写代码实现atoi和itoa函数的功能
- 算法练习之memmove函数C++实现,atoi,itoa函数实现
- C/C++ atoi、atof与itoa函数的实现