欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

将一个整数转换为16进制的字符串

程序员文章站 2023-12-27 19:18:33
...

在Windows下面有_ultoa_s函数的将一个整数转换为16进制的字符串,
在Linux下面没有这个函数,需要用到sprintf这个函数,如下代码所示

#include <iostream>
#include <cstdlib>
#include <cstdio>


//将一个整数转换为16进制的字符串

using namespace std;
int main(int argc, char* argv[])
{
  if (argc < 2)
  {
    printf("Usage: ./_ultoa_s [int_number]\n");
    return -1;
  }
  unsigned int n = atoi(argv[1]);
  char ss[9] = {'0'};

  sprintf(ss, "%x", n);
  printf("ss:%s\n", ss);

  return 0;
}

执行效果如下

[email protected]:~/tmp$ ./_ultoa_s 10
ss:a
[email protected]:~/tmp$ ./_ultoa_s 11
ss:b
[email protected]:~/tmp$ ./_ultoa_s 12
ss:c
[email protected]:~/tmp$ ./_ultoa_s 15
ss:f
[email protected]:~/tmp$ ./_ultoa_s 1515
ss:5eb
[email protected]:~/tmp$ ./_ultoa_s 151515
ss:24fdb
[email protected]:~/tmp$ ./_ultoa_s 15151515
ss:e7319b
[email protected]:~/tmp$
相关标签: 纯编程 Linux

上一篇:

下一篇: