我用
var
  i:integer;
  viewstring:string;
  rbuf,sbuf:array[1..1024] of byte;
begin
  viewstring:='';
  move(buffer^,pchar(@rbuf)^,bufferlength);
  for i:=1 to bufferlength do
  viewstring:=viewstring+inttohex(rbuf[i],2)+' ';
end;
得到十六进制数,如何转换为十进制数?急急!

解决方案 »

  1.   

    strtoint('$AB');
    就可以得到十六进制AB的十进制值。
      

  2.   

    谢谢各位,是在下没说清楚,我想请教程序中memo1.lines.add(viewstring)得到的十六进制数怎样转换到memo2.Lines.add(??????)的十进制数,程序在下:
    procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
      BufferLength: Word);
    var
      i:integer;
      Hex:integer;
      viewstring:string;
      rbuf,sbuf:array[1..1024] of byte;
    begin
      viewstring:='';
      move(buffer^,pchar(@rbuf)^,bufferlength);
      for i:=1 to bufferlength do
      viewstring:=viewstring+inttohex(rbuf[i],2)+'  ';
      viewstring:='接受'+viewstring;
      memo1.lines.add(viewstring);
      Hex:=Hextoint(viewstring);
      memo2.Lines.add(inttostr(Hex));
    end;
    可是不行,请指导,谢谢!!
      

  3.   

    ShowMessage(Format('$%x', [30000]));看看这个
      

  4.   

    n-1        n-2             0
    a*10    +  b*10    +……+  c*10