因为有多少个byte数组,事先并不知道,也不确定。
我以前用的办法是建立一个record,该record里面有一字段为byte数组。将该record加到Tlist中。
请问还有其它的好办法吗?
我以前用的办法是建立一个record,该record里面有一字段为byte数组。将该record加到Tlist中。
请问还有其它的好办法吗?
解决方案 »
- delphi+mysql 一下代码怎么会报错呢 ??很简单的问题,
- 使用WebBrowser控件,如何获取当前页面,当前鼠标所在图片【或文字】的连接地址?
- DELPHI中如何判断PCHAR为空?
- 编译错误,在线求救。。。。。。。。
- 100分求购制作安装程序的工具!不还价,谢谢!
- 我现急用sql6.5,我没有product id,安装时需要输入吗还有...
- 请教问题:关于字符串的保存?
- 发现Delphi的TWebBrowser有严重Bug.
- 关于图像处理技术的请教
- WebBrowser1如何实现XP样式
- 请问B/S中地址栏是DLL,界面显示的是Delphi组件编写,是怎么做的?
- lxpbuaa,这段代码的意思不是很明白
type
TByteArr = array of Byte;
PByteArr = ^TByteArr;
TByteArrS = array of PByteArr;不过还是用TList好,你没有必要再声明一个记录啊,把Byte数组指针存入TList即可。
size:integer;
begin
size:=....;
getmem(fRecord,size);
...
freemem(fRecord);
end;
var buffer :array of array of byte;
size,count:integer;
begin
size:=100;
count:=100;
setlength(buffer,size,count);
buffer[0,0]:=88;
showmessage(chr(buffer[0,0]));
end ;
星星的办法好像可行,我在研究。另外,为了感谢大家的鼎力相助,我要把分数扩大超过100分,请问有什么办法?
我把Tlist设置成全局变量。两个线程都对这个TList操作,一个是add,一个是delete。
Tlist中add数组的地址的话,那个byte数组的地址有可能有重复,为什么呢?因为add线程中,当生成了一个byte数组就add这个数组到Tlist中去。很有可能,这个byte数组的地址没有变化,而里面的内容改变了。