Buf: Array of byte类型的动态数组如何定义 (18分)

  • 主题发起人 主题发起人 600019629
  • 开始时间 开始时间
6

600019629

Unregistered / Unconfirmed
GUEST, unregistred user!
var
List: TStringList;
I: Integer;
Str: string;
Buf: Array of byte;
begin
Str := '01 00 00 00 01 00 00 00 05 00 02 00 00 00 0A B9 D2 BB FA D5 CA ';
List := TStringList.Create;
ExtractStrings([' '], [], PChar(Str), List)
// 分割
SetLength(Buf, List.Count - 1);
for I := 0 to List.Count - 1 do
begin
Buf :=StrToIntDef('$' + List, 0)
// 赋给整数
end;
List.Free;
end;
在SetLength(Buf, List.Count - 1);这句会出错,说无效的指针操作,请问该如何定义Buf: Array of byte类型的动态数组或者说Buf:array[0..100]of byte;其中100这个数值可以让我自定义也成
 
兄弟:
SetLength(Buf, List.Count - 1)
这句错啦,
应该是
SetLength(Buf, List.Count)

不然动态数组少一个元素,在最后一个元素的地方发生指针错误,放到别人的地盘乐。呵呵
 
couchman兄弟谢了
 

Similar threads

I
回复
0
查看
894
import
I
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
850
import
I
I
回复
0
查看
698
import
I
后退
顶部