困扰很久的问题,请高手帮忙解决..........
char hexbuf[3];
int hexbuf_h;
int hexbuf_l;
int buf;
Edit7->Text = "EB";
String SData =Edit7->Text;
int nnn = SData.Length();
int i=0;
for(int l=1;l<nnn+1;l++)
{
hexbuf_h=ConvertHexChar(SData[l]);
l++;
hexbuf_l=ConvertHexChar(SData[l]);
buf=hexbuf_h*16+hexbuf_l;
hexbuf[i]=buf;
char sdfd= hexbuf[i];
i++;
}
MSComm1->Output=StringToOleStr(hexbuf);
注:ConvertHexChar的作用,F->15,E->14,....1->1;0->0
以上程序:发EB,但用十六进制收不到.原因:EB对应ASCII码值>128,且是单字节.
请问:如何解决?多谢高手!