如何把一个十进制的数转换成十六进制2位

怎么把一个十进制的数转换成十六进制2位
本帖最后由 xingat110 于 2013-06-03 17:46:56 编辑
怎么把一个十进制的数转换成十六进制2位,高位在前,低位在后。比如:273转换成0x01 0x11 。

------解决方案--------------------
IntToHex(十进制数,十六进制位数),如:

AnsiString s[2] ;
s[0] = IntToHex((unsigned char)(273/256),2);
s[1] = IntToHex((unsigned char)(273%256),2);

Memo1->Lines->Add(s[0]) ;
Memo1->Lines->Add(s[1]) ;
------解决方案--------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int v = 273;
Caption = AnsiString().sprintf("0x%02x 0x%02x", v >> 8, v & 255);
}