__________________________________________路有尽,道无涯__________________________________________

【Profound__爱生活__诗意地栖息】

C/C++ || Python || Linux || 单片机 || 嵌入式 || 机器视觉

  博客园  :: 首页  :: 新随笔  ::  :: 订阅 订阅  :: 管理

http://bbs.csdn.net/topics/330082331 

1、

var
  buf: array[0..1] of byte;
  bus: array[0..3] of byte;
  si:SmallInt ;
  i:Integer ;
begin
  buf[0] := $01;
  buf[1] := $02;
  bus[0] := $00;
  bus[1] := $01;
  bus[2] := $02;
  bus[3] := $03;

  Move(buf,si,SizeOf(SmallInt) );
  ShowMessage(IntToStr(si));

  Move(bus,i,SizeOf(Integer) );
  ShowMessage(IntToStr(i));

2、

类型转换
用个Integer指针直接指向字节数组就OK了,如果就想看看转换结果的话,MOVE都不用了
var
  buf : array[0..3] of byte;
  Pint:PInteger;
begin
  buf[0] := $00;
  buf[1] := $01;
  buf[2] := $02;
  buf[3] := $03;
  Pint:=@buf[0];
  ShowMessage(IntToStr( Pint^));
end;

3、

var
  buf : array[0..1] of byte;
  bus : array[0..3] of byte;
  function ByteToHex(InByte:byte):shortstring;
    const Digits:array[0..15] of char='0123456789ABCDEF';
  begin
    result:=digits[InByte shr 4]+digits[InByte and $0F];
  end;
  function BinArrayToString(aArray: array of Byte): string;
  var
    i: integer;
  begin
    result:='';
    for i:= Low(aArray) to High(aArray) do
    begin
      result:= result + ByteToHex(aArray[i]);
    end;
    Result:= IntToStr(StrToInt('$'+result));
  end;
begin
  buf[0] := $01;
  buf[1] := $02;
  showmessage(BinArrayToString(buf));
  bus[0] := $00;
  bus[1] := $01;
  bus[2] := $02;
  bus[3] := $03;
  showmessage(BinArrayToString(bus));
end;

 

posted on 2016-08-04 13:37  HiRong  阅读(3690)  评论(0编辑  收藏  举报
__________________________________________路有尽,道无涯__________________________________________