我想分别打印数组中的三个值
myData: Array [1..3] of BYTE;tmpStr := PChar(myData[1]) + ',' + PChar(myData[12]) + ',' + PChar(myData[3]);但运行出错,请指点

解决方案 »

  1.   

    tmpStr:=Format('%d,%d,%d',[myData[1],myData[2],myData[3]]);
      

  2.   

    tmpStr := Format('%d, %d, %d', [myData[1], myData[2], myData[3]]);
      

  3.   

    这样也蛮累的,假如有1K的数组也这样做的话用个循环吧var
      I: Integer;
    begin
      tmpStr := '';
      for I := 1 to 3 do
      begin
        tmpStr := tmpStr + Format('%d ', [myData[I]]);
      end;
    end
      

  4.   

    function ByteArrayToStr(arr: array of byte): string;
    var
      i: Integer;
    begin
      Result := '';
      for i := Low(arr) to High(arr) do
      begin
        Result := IntToStr(Ord(arr[i])) + Result;
      end;
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
      arr: array[0..1] of byte;
    begin
      arr[0] := 21;
      arr[1] := 22;
      ShowMessage(ByteArrayToStr(arr));
    end;