关于数据转换的问题
下图是我从串口收到的来自单片机的数据,单片机是按十六进制数来发送的,PC接收后有的是十六进制表示的,有的是ASCII表示的,怎么把它们全部转换成十六进制的呢?而且还不要带有0X。
http://hi.csdn.net/attachment/201005/28/5730129_127502932468J4.jpg
[解决办法]
这些全都是二进制码,没必要再进行转换,至于BCB调试显示的数据是这样的:可见字符用字符形式,转义字符用转义形式,不可见字符则用16进制数。不用去管它。你只要知道你接收的是二进制码就够了。
[解决办法]
void __fastcall TForm1::Button1Click(TObject *Sender){ byte a[3]={0xAA,0xBB,0xCC}; AnsiString s ; for(int i=0;i<3;i++) s+=IntToHex(a[i],2) ; ShowMessage(s);}