首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

怎么将10进制转成定长的16进制输出?

2012-03-16 
如何将10进制转成定长的16进制输出??如d119807(10进制)对应的16进制为1d07b现定义一字符数组h[8],用itoa(

如何将10进制转成定长的16进制输出??
如d=119807(10进制)   对应的16进制为1d07b

现定义一字符数组h[8],用itoa(d,h,16)转换时得到h[8]= "1d07b ",如何得到h[8]= "0001d07b "。

[解决办法]
用两个字符数组
char h[8],h1[8],*p;
itoa(d,h1,16);
p = &h[7 - strlen(h1)];
strcpy(p,h1);
for (i = 0 ; i < 7-strlen(h1) ; ++i)
h[i] = 0;
[解决办法]
sprintf(h, "%08X ", d);

热点排行