有些库中有atoi()函数,但没有itoa()函数,怎么办?自己写啊!!!

一:先来看看库atoi()函数和itoa()函数的用法:

1.atoi 是把字符串转换成整型数的一个函数,int atoi(const char *nptr) 函数会扫描参数 nptr字符串,跳过前面的空白字符(例如空格,tab缩进)等,可以通过isspace( )函数来检测),直到遇上数字或正负符号才开始做转换,而在遇到非数字或字符串结束符('\0')才结束转换,并将结果返回。如果 nptr不能转换成 int 或者 nptr为空字符串,那么将返回 0 。

代码实现如下:

//vs2013里调用printf函数请使用预处理命令#define _CRT_SECURE_NO_WARNINGS
int main()
{char a[] = "-100";char b[] = "123";int c;c = atoi(a) + atoi(b);printf("c=%d\n", c);getchar();return 0;
}

2.itoa 为c语言的一个函数。itoa 函数是一个广泛应用的,从非标准扩展到标准的C语言。它不能被移植,因为它不是标准定义下的C语言,但是,编译器通常在一个不遵循程式标准的模式下允许其通过header ,因为它是一个从逻辑对应到标准库的函数。itoa 取整数输入值,并将其转换为相应进制数字的字符串。

char *itoa( int value, char *string,int radix); 
原型说明:
value:欲转换的数据。
string:目标字符串的地址。
radix:转换后的进制数,可以是10进制、16进制等。
功能:

把一个整数转换为字符串

代码实现如下:

int main(void)
{int number = 12345;char string[32];itoa(number, string, 10);printf("integer = %d \nstring = %s\n", number, string);getchar();return 0;
}

二:自己来实现itoa()函数和atoi()函数

1.自己来实现itoa,直接上代码:

void my_itoa(long i, char *string)
{int power = 0, j = 0;j = i;for (power = 1; j>10; j /= 10)power *= 10;for (; power>0; power /= 10){*string++ = '0' + i / power;i %= power;}*string = '\0';printf("%s\n", string);
}
int main()
{char string[20];long timestamp = 1526567094;my_itoa(timestamp, string);printf("%s\n", string);getchar();return 0;
}

2.1.自己来实现atoi,直接上代码:

//char *a = "12345";//是一个char *型变量,位于常量存储区 不可更改指针指向的数据
//char a[] = "12345";//一个char型数组
int my_atoi(char *str)
{if (!str)return -1;bool bMinus = false;int result = 0;if (('0'>*str || *str>'9') && (*str == '+' || *str == '-')){if (*str == '-')bMinus = true;*str++;}while (*str != '\0'){if ('0'> *str || *str>'9')break;elseresult = result * 10 + (*str++ - '0');}if (*str != '\0')//no-normal end  return -2;return bMinus ? -result : result;
}
int main(void)
{char c1[] = "12345";char c2[] = "-12345";char c3[] = "bat-123";char c4[] = "+123abc";printf("c1=%d\n", my_atoi(c1));printf("c2=%d\n", my_atoi(c2));printf("c3=%d\n", my_atoi(c3));printf("c4=%d\n", my_atoi(c4));getchar();return 0;
}

自己用C语言写itoa 函数和atoi函数相关推荐

  1. C语言 itoa函数及atoi函数

    C语言 itoa函数及atoi函数 itoa函数及atoi函数 2007-05-11 13:52 C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串.以下是用ito ...

  2. itoa函数和atoi函数的实现和用法

    itoa函数和atoi函数的用法 参考网址:http://wenhaidongke.blog.163.com/blog/static/12807009020098213576224/ C语言提供了几个 ...

  3. C语言itoa()函数和atoi()函数详解(整数转字符C实现)

    C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. 1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型.长 ...

  4. 【C语言】 itoa()函数 和 atoi()函数(字符串与整型数的转换)

    文章目录 一.atoi()函数 二.itoa()函数 三.利用atoi() 和itoa()函数进行进制转换 一.atoi()函数 atoi()是C语言中的字符串转换成整型数的一个函数 (1)[头文件] ...

  5. itoa函数和atoi函数

    itoa是广泛应用的非标准C语言扩展函数.由于它不是标准C语言函数,所以不能在所有的编译器中使用.但是,大多数的编译器(如Windows上的)通常在<stdlib.h>头文件中包含这个函数 ...

  6. itoa()函数与atoi()函数

    目录 1.itoa()函数(整型转字符) 2.atoi()函数(字符转整型) 1.itoa()函数(整型转字符) 以下是用itoa()函数将整数转换为字符串的一个例子: # include <s ...

  7. 【C++】之 iota() 函数与 atoi() 函数详解

    参考: https://blog.csdn.net/lixiaogang_theanswer/article/details/72588105 http://c.biancheng.net/view/ ...

  8. c易语言自定义函数规则,【图】请教用易语言写通达信的自定义函数dll接口_选股公式,炒股公式,炒股,股票公式,炒股软件_股票软件技术交流论坛_理想论坛 - 股票论坛...

    请问周大师,易语言中调用tdx的这个dll接口,程序执行查询10档等是可以,但在调用逐笔委托/成交接口时直接core出,按文章的方法置入代码也是一样.请教下有没有解决方法,或时哪里有错误的地方,怎么易 ...

  9. itoa()函数和atoi()函数详解

    C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. 以下是用itoa()函数将整数转换为字符串的一个例子: # include <stdio.h> # ...

最新文章

  1. 《HTML5触摸界面设计与开发》——导读
  2. 包治百病 | 如何将一个.NET Core类库发布到NuGet
  3. ReSharper 2020.2 补丁
  4. BZOJ2535: [Noi2010]Plane 航空管制2(拓扑排序 贪心)
  5. 炫炫炫的十六进制编辑器
  6. CodeQL自动化代码审计工具
  7. 电脑上值得收藏的4个黑科技网站,日常办公中能帮你解决各种麻烦
  8. 快压、360压缩、WinRAR关于打开快压通过超高压缩比压缩后的文件不兼容的问题...
  9. 算法与程序的区别和联系(转)
  10. esp分区引导修复失败_ESP分区丢失,新建ESP分区修复引导教程
  11. php企业微信回调url校验失败,企业微信第三方服务商回调URL无法通过验证
  12. 我为什么要表扬深信服(转)
  13. 京东上位2018年财富中国500强民企第一席 首次实现全年盈利
  14. 差分放大电路知识总结
  15. 6500元都不到?战神Z8-DA5NP配置强悍,神船的性价比又回来了
  16. 证券行业信息化17_我的香港游记3_交易系统技术支持部_会计与结算技术支持部都干些什么?
  17. MySQL中的insert ignore into讲解
  18. [Easy] 169. Majority Element
  19. 老陈---谈Delphi中SSL协议的应用
  20. 不用下载任何软件,比360强力删除还强的删除文件方法

热门文章

  1. Linux-C基础知识学习:C语言作业-将5个学生成绩保存在一个数组中,单独实现一个计算平均成绩的average函数, 在main函数中获取该函数返回的平均值,并打印。
  2. jupyter指定端口打开;ImportError: DLL load failed报错;jupyter登录token获取
  3. c语言编译器自带宏定义,C/C++中内置的宏定义
  4. 初始SQL语句 简单使用
  5. 爱上一个不同城市的女孩
  6. 安卓车机root改流浪地球_【搬运】一篇安卓的荣耀特权,作者:nihall
  7. [OpenAirInterface实战-11] :OAI nr-softmodem命令行参数详解
  8. cad卸载_如何卸载干净CAD?
  9. 爬虫中滑动验证的绕过
  10. 合跨区无线连接服务器,阴阳师集结之境跨区服务器汇总 阴阳师集结之境跨区服务器一览...