实现itoa函数
来源:互联网 发布:ubuntu安装aptget 编辑:程序博客网 时间:2024/05/05 16:46
char *itoa(int value, char *string, int radix);
int value 被转换的整数,char *string 转换后储存的字符数组,int radix 转换进制数,如2,8,10,16 进制等
头文件<stdlib.h>
程序实例:
#include <stdlib.h>#include <stdio.h>int main(){int number = 123456;char string[25];itoa(number, string, 10);printf("integer = %d string = %s\n", number, string);return 0; }
itoa函数的实现
//---------------------------------------- // 实现 itoa() 函数 //---------------------------------------- char* myitoa(int n, char* str, int radix){ int a = n; int b = 0; int c = 1; char* p = str; if (0 == a){ // 如果是0,直接输出"0" strcpy(str, "0"); return str; } else if (a < 0){ // 如果是负数,记下负号 c = -1; a = -a; } while(a > 0){ // 反复取余 b = a % radix; a = a / radix; if (b < 10) *p = b + '0'; // 0-9 直接输出"0"-"9" else *p = b - 10 + 'A'; // > 10 输出"A"-... p++; } if (c < 0) *p++ = '-'; // 按需添加负号 *p = 0; // 字符串结尾 // 下面将字符串 str 逆序即可,也可调用系统函数 str = strrev(str); int len = strlen(str); // 取出长度 int i = 0; char ch = 0; for (i = 0; i < len / 2; i++){// 首尾交换,共计 len / 2 次 c = str[i]; str[i] = str[len - i - 1]; str[len - i - 1] = c; } return str; } //---------------------------------------- // 测试 itoa() //---------------------------------------- void Testmyitoa(void) { int n = 0, r = 2; char str[100]; // 下面输出为: itoa(11, 2) = 1011 n = 11; r = 2; myitoa(n, str, r); printf("itoa(%d, %d) = %s\n", n, r, str); // 下面输出为:itoa(-3000, 16) = -BB8 n = -3000; r = 16; myitoa(n, str, r); printf("itoa(%d, %d) = %s\n", n, r, str); }
- 递归实现itoa函数
- atoi,itoa函数实现
- 实现itoa函数
- itoa函数实现
- itoa函数实现
- 具体实现itoa()函数
- itoa函数实现
- 实现itoa函数
- itoa函数的实现
- itoa()函数的实现
- itoa函数简单实现
- itoa函数的实现
- itoa函数的实现
- itoa函数的实现
- itoa()函数实现
- itoa函数的实现
- 函数atoi,itoa 的实现
- 自写 itoa实现函数
- 库函数注意事项
- 图像处理领域几个开源库的比较(存档)
- J2SE, J2ME, J2EE简介
- Ruby环境搭建与“Hello World”
- 实验三:TCP/IP协议分析实验
- 实现itoa函数
- SD卡分析一
- linux内核TCP相关参数解释
- Mi2上装的应用们,大家也可以分享下好的应用
- 编程之美4.2 瓷砖覆盖
- linux Hello World 模块编程
- 使用JQuery实现导航条
- Jsp+servlet+javabean使用Lucene3.6.2做一个简单数据库搜索的总结(2)
- 【c/c++】linux下automake的使用(premium quality)