请教:VC++中如何实现十六进制转换为十进制?如1A转为26
请教:VC++中如何实现十六进制转换为十进制?如1A转为26 0x1A不就等于26的么?还要转换干嘛呢。 自己顶一下 谢谢一楼提醒,我再想想 一楼在吗? 是不是把十六进制字符串转换为对应的数字呀 在,有事? 是的,还能指点一下, 我问的就是5楼描述的意思。1楼和5楼的朋友还能指点小弟一下。 估计是16进制数字转换为10进制字符串吧 用CString.Format吧 我做上位机和温控仪通信,根据温控仪的协议。我读到的温度值,是@011R00,001A 我现在想把001A转为26显示一下是协议对001A的解释:
通讯数据[⑾这位的数据量决定于这位的数据,既这位的数据长度不定]。数据总是以”,”(2CH)开头,数据项与数据项之间不需要任何分割符。数据的长度主要取决于第⑽的方式。每一个数据项由16位二进制代码组成(1个字),每4位被分成一个数据单元,同时每个数据单元又被转换成ASCII数据。当⑸位为 ”W”写命令时,此位不用。 001A这一个数据项由16位二进制代码组成(1个字),每4位被分成一个数据单元,同时每个数据单元又被转换成ASCII数据。
就是说 16位二进制中,高八位被转换成ASCII数据00 ,低八位被转换成ASCII数据1A. 而温控仪显示的温度是26度。
又如0100表示温控仪显示的温度是256度 请问5楼还在?我觉得就是你说的这个意思。还能指点小弟 我常使用c的库函数,itoa,你也可以试试,包含stdlib.h文件即可。 谢谢楼上
页:
[1]