如何把一个整型数据转化成各个字符的ascii码
对于一个整型数据,1~7位长,我要把它的各个位上字符的ascii码写入一个数组,请问怎么实现啊?谢谢![此贴子已经被作者于2006-11-27 20:38:49编辑过]
[此贴子已经被作者于2006-11-27 20:38:49编辑过]
#include "stdio.h"
/*定义部分*/
long s=8912376;
char f[7]={0};
int i=0;
/*你要求的实现方法*/
sscanf(s,"%s",f);
/*输出结果(ascii码号)*/
while(f[i]!=0) {
printf("%d",f[i]);
i++;
}
我要转换成ascii的十六进制表示,用了一个最笨的方法:
void Change(uint32 vell)
{uint8 a[7];
uint8 i;
a[6]=vell%10;
vell=vell/10;
a[5]=vell%10;
vell=vell/10;
a[4]=vell%10;
vell=vell/10;
a[3]=vell%10;
vell=vell/10;
a[2]=vell%10;
vell=vell/10;
a[1]=vell%10;
vell=vell/10;
a[0]=vell%10;
for(i=0;i<7;i++)
{a[i]+=0x30;}
}
当然可以用递归,请问用递归是不是比这样效率要高啊?
[此贴子已经被作者于2006-11-28 10:52:07编辑过]