C51进制转换

2019-07-15 23:04发布

请问在C51中如何将十进制数转化为十六进制数???
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
爱我别走
2019-07-16 11:27
需要知道你的具体要求。1.如果是给机器赋值或者是数学运算则不需要转换,计算机都是以二进制存储数的,任何数值的数最终都会转换为二进制。比如你写P0=100,和P0=0X64效果是一样的。

2.如果是将十进制数以十六进制形式显示出来,则需要相应转换。可以自己写转换函数,也可以调用现成的函数,比如sprintf函数(需包含stdio.h文件)。
具体用法:
char str[4];
int num=100;
sprintf(str,"0x%0x",num);
最终str得到字符串"0x64";

一周热门 更多>