itoa函数递归实现
库函数中有atoi函数,用意是将字符形式输入的数据转换成数字,而库函数有没有提供一个将数字转换成字符的函数呢?答案是有的,而且功能很是强大,那就是sprintf()、snprintf()格式化转换函数,它的原型是:
int sprintf(char *buf,const char *format,...)
int snprintf(char *buf,int size,const char *format,...)
以上都是将数字转换成字符的形式的标准库函数。
那么有没有别的自己实现的函数呢?好看看下面递归实现的:
void _itoa(int value,char *str,int radix)
{
char temp[2]=" ";
int a=0;
if (value>0)
{
if(radix == 2){
_itoa(value/2,str,2);
temp[0]=(char)(value%2+'0');
strcat(str,temp);
}
else if(radix == 8){
_itoa(value/8,str,8);
temp[0]=(char)(value%8+'0');
strcat(str,temp);
}
else if(radix == 16){
_itoa(value/16,str,16);
a=value%16;
if(a<=9)
temp[0] = a +'0';
else
temp[0] =(char) (a+55);
strcat(str,temp);
}
else {
_itoa(value/10,str,10);
temp[0]=(char)(value%10+'0');
strcat(str,temp);
}
}
else
return ;
}
该函数可以将一个十进制的正整数转换成二进制、十进制、八进制、十六进制形式的字符串。
itoa函数递归实现的更多相关文章
- itoa函数的递归实现(二级指针实现)
问题提出 <C Programming Language>书中在递归这一节预留了两个使用递归实现的函数,其中itoa函数是用来将一个整数转换为一个字符串.书中已有使用循环实现的版本,但是直 ...
- c语言函数, 函数调用及函数递归
1. 函数的定义: 返回值类型 函数名(形参列表) {函数体(函数的实现内容)}, 注意: 如果没有参数, 小括号也是必不可少的. 函数与函数之间可以嵌套调用(也就是在一个函数内部可以调用另外一个函 ...
- C语言itoa()函数和atoi()函数详解(整数转字符C实现)
1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串,下面列举了各函数的方法及其说明. ● itoa():将 ...
- Python开发【第一篇】Python基础之函数递归
函数递归 递归的本质: 就是一个函数调用另外一个函数. def d(): return '123' def c(): r = d() return r def b(): r = c() return ...
- C语言itoa()函数和atoi()函数详解(整数转字符)
http://c.biancheng.net/cpp/html/792.html C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. 以下是用itoa()函数将整 ...
- itoa函数的实现(不同进制)
2013-07-08 17:12:30 itoa函数相对于atoi函数,比较简单,还是要注意考虑的全面. 小结: 一下几点需要考虑: 对负数,要加上负号: 考虑不同进制,根据要求进行处理:对不同的进制 ...
- C语言itoa函数和atoi 函数
C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串.以下是用itoa()函数将整数转 换为字符串的一个例子: # include <stdio.h> ...
- 函数:递归是神马 - 零基础入门学习Python022
函数:递归是神马 让编程改变世界 Change the world by program 我们这节课的主题叫递归是神马,将通过小甲鱼带感的讲解,来告诉大家神马是递归!如果说优秀的程序员是伯乐,那么把递 ...
- c++实现atoi()和itoa()函数(字符串和整数转化)
(0) c++类型所占的字节和表示范围 c 语言里 类型转换那些事儿(补码 反码) 应届生面试准备之道 最值得学习阅读的10个C语言开源项目代码 一:起因 (1)字符串类型转化为整数型(Integer ...
随机推荐
- 家庭账本开发day11
编写登录界面和个人信息查看界面 $.ajax({ url: "UserServlet?method=login",//url ...
- Postman进行webservices接口测试
1.接口地址 webservices是什么? 更多webservices接口地址访问地址:http://www.webxml.com.cn/zh_cn/web_services.aspx webser ...
- Unittest方法 -- 测试报告&加载测试类(discover)
import unittestimport HTMLTestRunnerimport osclass F11(unittest.TestCase): def test_001(self): self. ...
- Python - 浅拷贝的四种实现方式
浅拷贝详解 https://www.cnblogs.com/poloyy/p/15084277.html 方式一:使用切片 [:] 列表 # 浅拷贝 [:] old_list = [1, 2, [3, ...
- 深入刨析tomcat 之---第15篇 对应20章, myAdmin案例代码
writedby 张艳涛 有没有和我一样做到第20章的?今天基本结束了本书的阅读.最后一个案例没有demo,那我写了一回,如果有需要的可以在本地试试 路径 D:\wksp_study\designbo ...
- 深入刨析tomcat 之---第1篇,解决第1,2章bug 页面不显示内容Hello. Roses are red.
writedby 张艳涛, 第一个问题是不显示index.html网页 19年才开始学java的第二个月,就开始第一遍看这本书,我估计当初,做第一章的一个案例,自己写代码,和验证就得一天吧,当初就发现 ...
- jvm源码解读--11 ldc指令的解读
写一个java文件 public static void main(String[] args) { String str1="abc"; String str2 ="a ...
- js学习笔记之公告逐行显示
$(function(){ var newsListHeight = $(".news-list").height(); //获得内容的高度 var newsConHeight = ...
- Python实用案例,Python脚本,Python实现批量加水印
往期回顾 Python实现自动监测Github项目并打开网页 Python实现文件自动归类 Python实现帮你选择双色球号码 Python实现每日更换"必应图片"为"桌 ...
- xss常见方式
1.<script>alert(1)</script> 2.源码第一个,[<]被转义,因此在第二个里 "><script>alert(1)&l ...