关于 动态字符 数组 显示 问题
var
  buf: array  of char;
 
begin   setlength( buf, 30)  ;   开始赋值数组:   buf[0] := chr(5)  ;
    buf[1] := chr(245)  ;
 buf[2] := chr(12)  ;
 buf[3] := chr(228)  ;
 buf[4] := chr(61)  ;
 buf[5] := chr(25)  ;
 buf[6] := chr(174)  ;
 buf[7] := chr(203)  ;
 buf[8] := chr(45)  ;
....
....
....
 buf[29] := chr(255)  ;
  使用下面的方法显示, 可以看到很多的乱码 . :    for I := 0 to 29 do
       begin
         send_Memo.Text  :=  send_Memo.Text  +   buf[i]
       end;
  
------------------------------如果用下面的方法, 看不到任何字符: var str:string;  for I := 0 to 29 do
       begin
         str  := str  +   buf[i]
       end;
//放到 memo 显示 
send_Memo.Text  := str;为什么用 第2种 方法看不到任何字符 但用  length(str)显示字符个数是正确的,为什么会这样?