设为首页 加入收藏

TOP

C语言实现atoi和itoa(字符串与数字之间的转化)
2017-09-19 14:34:53 】 浏览:5543
Tags:语言 实现 atoi itoa 字符串 数字 之间 转化

C语言实现atoi和itoa(字符串与数字之间的转化)

#include 
  
   
#include 
   
     #include 
    
      #include 
     
       #include 
      
        #include 
       
         //字符转数字("123"->123,"12a3"->12,"a12"->0) 遇到字母就退出 int Myatoi(const char *str) { assert(str!=NULL); if(str==NULL) { return 0; } int sum = 0; while(isdigit(*str)) { sum = sum*10 + *str - '0'; str++; } return sum; } //数字转字符 123-》“123” void StrReverse(char *str) { char *p = str; char tmp; while(*p!='\0') { p++; } p--; for(;str<=p;str++,p--) { tmp = *str; *str = *p; *p = tmp; } } int GetFigure(int num) { int count=0; while(num!=0) { count++; num /= 10; } return count; } char *Myitoa(int num) { char *p=(char*)malloc(GetFigure(num)+1 * sizeof(char)); int i=0,j=0; while(num!=0) { p[i++] = num%10 + '0'; num /= 10; } p[i]='\0'; StrReverse(p); return p; } int main() { printf("%d\n",Myatoi("a12")); printf("%d\n",Myatoi("123")); printf("%d\n",Myatoi("12a3")); char str5[20]; printf("%s\n",Myitoa(123456789)); char *str = Myitoa(123456789); printf("%s\n",str); free(str); return 0; }
       
      
     
    
   
  

打印结果:
0
123
12
123456789
123456789

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C语言实现字符串连接和字符串比较 下一篇C语言关键字及说明

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目