上代码之前先讲个笑话:曾经有位面试官问:“你实现过 唉踢哦诶(音) 吗”?  我第一个想到的是各种OA系统,心想那玩意不多是Java实现的吗。。。过一会想明白了,瞬间石化。。。

 #include <cstdio>
#include <stdint.h> int8_t Myitoa(int64_t In_i64SrcNum, uint8_t In_i8Radix, char *In_pcDst)
{
int8_t i8RetVal = ;
//这里强转是为了2、8、16进制显示的时候不需要符号
uint64_t ui64SrcNum = (uint64_t)In_i64SrcNum;
char *pcDst = In_pcDst;
const char acTable[] = "0123456789ABCDEF"; if (In_i8Radix <= || pcDst == NULL)
{
i8RetVal = -;
goto fun_ret;
} if (ui64SrcNum == )
{
*(pcDst ++) = '';
*pcDst = ;
goto fun_ret;
} if ((int64_t)ui64SrcNum < && In_i8Radix == )
{
ui64SrcNum = ~ui64SrcNum + ;
*(pcDst ++) = '-';
} do //do...while循环的效率较高
{
*(pcDst ++) = acTable[ui64SrcNum % In_i8Radix];
ui64SrcNum /= In_i8Radix;
} while (ui64SrcNum);
*pcDst = ;
pcDst --; In_pcDst = *In_pcDst == '-' ? In_pcDst + : In_pcDst;
do
{
char cTmp = *In_pcDst;
*In_pcDst = *pcDst;
*pcDst = cTmp;
In_pcDst ++;
pcDst --;
} while (In_pcDst < pcDst); fun_ret:
return i8RetVal;
} void main()
{
int64_t i64Test = -;
char acBinStr[] = {};
char acOctStr[] = {};
char acDecStr[] = {};
char acHexStr[] = {};
Myitoa(i64Test, , acBinStr);
Myitoa(i64Test, , acOctStr);
Myitoa(i64Test, , acDecStr);
Myitoa(i64Test, , acHexStr);
printf("%s\n%s\n%s\n%s\n", acBinStr, acOctStr, acDecStr, acHexStr);
return;
}

趁着找工作这段时间,补补基础,唉,不是科班出身的短板啊。。。

参考:

http://www.cnblogs.com/applebunny/archive/2012/06/21/2557361.html

http://blog.csdn.net/wwwsq/article/details/5137006

实现itoa()的更多相关文章

  1. c/c++面试题(8)memcopy/memmove/atoi/itoa

    1.memcpy函数的原型: void* memcpy(void* dest,cosnt void* src,size_t n); 返回值:返回dest; 功能:从源内存地址src拷贝n个字节到des ...

  2. C语言提供了几个标准库函数 itoa() atoi()

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

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

    1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串,下面列举了各函数的方法及其说明. ● itoa():将 ...

  4. itoa

    功能:把int转为字符数组 eg: int a=100: char ch[3]; itoa(a,ch,10)://十进制 ---->ch[0]==1;...

  5. 转载 C++常用库函数atoi,itoa,strcpy,strcmp的实现

    C++常用库函数atoi,itoa,strcpy,strcmp的实现 C语言字符串操作函数 1. 字符串反转 - strRev2. 字符串复制 - strcpy3. 字符串转化为整数 - atoi4. ...

  6. atoi&itoa

    char* itoa(int num,char*str,int radix) {/*索引表*/ char index[]="0123456789ABCDEFGHIJKLMNOPQRSTUVW ...

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

    http://c.biancheng.net/cpp/html/792.html C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. 以下是用itoa()函数将整 ...

  8. itoa函数的实现(不同进制)

    2013-07-08 17:12:30 itoa函数相对于atoi函数,比较简单,还是要注意考虑的全面. 小结: 一下几点需要考虑: 对负数,要加上负号: 考虑不同进制,根据要求进行处理:对不同的进制 ...

  9. itoa函数的递归实现(二级指针实现)

    问题提出 <C Programming Language>书中在递归这一节预留了两个使用递归实现的函数,其中itoa函数是用来将一个整数转换为一个字符串.书中已有使用循环实现的版本,但是直 ...

  10. 当 ITOA 遇上 OneAlert,企业可以至少每年节省 3600 小时!

    每个工作日,一家大型企业都可能存在一两件优先级为 1 级的事件,五六件优先级为 2 级的事件和百来件优先级为 3 级的事件.试想一下,如果公司所有支持人员都要收到每个事件的通知--不想了,我好方!还能 ...

随机推荐

  1. 浏览器自动化测试初探 - 使用phantomjs与casperjs

    收录待用,修改转载已取得腾讯云授权 作者:yangchunwen 首先要解释一下为什么叫浏览器自动化测试,因为本文只关注发布后页面功能的自动化测试,也就是UI层面的自动化. 浏览器测试有别于js代码的 ...

  2. [C++基础]那些容易被混淆的概念:函数/数组指针-指针函数/数组,类/函数模板-模板类/函数

    函数指针-指针函数 函数指针的重点是指针.表示的是一个指针,它指向的是一个函数.eg: int (*pf)(); 指针函数的重点是函数.表示的是一个函数,它的返回值是指针.eg: int* fun() ...

  3. 获取jQuery版本号

    今天在一个页面需要知道jquery版本号,来决定使用什么样的方法,有以下方式可以获取到 $.fn.jquery $.prototype.jquery 这两种方式都可以获取到jquery的版本号

  4. PHP XML Parser函数

    PHP XML Parser 函数 PHP XML Parser 简介 XML 函数允许您解析 XML 文档,但无法对其进行验证. XML 是一种用于标准结构化文档交换的数据格式.您可以在我们的 XM ...

  5. java在线预览txt、word、ppt、execel,pdf代码

    在页面上显示各种文档中的内容.在servlet中的逻辑 word: BufferedInputStream bis = null; URL url = null; HttpURLConnection ...

  6. NSArray利用Cocoa框架进行汉字排序

    NSArray利用Cocoa框架进行汉字排序 在NSString有一个函数localizedCompare:,它的功能是通过自身与给定字符串的比較,返回一个本地化的比較结果.也就是说这个函数是支持汉字 ...

  7. 如何配置 Oracle VirtualBox 中的客户机与物理机网络

    当你在 Oracle VirtualBox 虚拟机软件 中安装了各种操作系统时,你可能需要实现物理机与虚拟机之间的相互访问. 在这篇文章中,我们将会以最简单明了的方式来说明如何配置客户机与 Linux ...

  8. C#:消息框

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...

  9. 摘:常用函数(包括:宽字符函数、普通C函数 )

    只要看见“W”就是宽的意思,左边wchar_t,右边char 字符分类: 宽字符函数            普通C函数            描述 iswalnum()             isa ...

  10. CString中Format函数与格式输入与输出

    CString中Format函数与格式输入与输出 Format是一个非经常常使用.却又似乎非常烦的方法,下面是它的完整概貌.以供大家查询之用:   格式化字符串forma("%d" ...