我开了一个缓冲,定义为:buffer : array[1.200] of integer;我在其中一个线程里收数,然后在定时器里取出缓冲的数据。请问我 应该如何取数啊?代码应该怎么写呢?
我现在的代码是:begin
  i := i + 1;
  data := buffer[i];
  if i = 200 then
  begin
     i:= 0;
  end;
end;但取出来的数据不对。与收到的存入缓冲的数据不一样。应该怎么做啊?各位大虾?

解决方案 »

  1.   

    先把BUFFER地址给一数组,在取数
      

  2.   

    我开了一个缓冲,定义为:buffer : array[1.200] of byte;我在其中一个线程里收数,然后在定时器里取出缓冲的数据。请问我 应该如何取数啊?代码应该怎么写呢?
    我现在的代码是:move(pchar(buff),pchar(buffer[0])^,length(buffer));
      

  3.   


    我开了一个缓冲,定义为:buffer : array[1.200] of byte;我在其中一个线程里收数,然后在定时器里取出缓冲的数据。请问我 应该如何取数啊?代码应该怎么写呢?
    我现在的代码是:move(pchar(s)^,buff[0],length(s));^_^:更正下子。
      

  4.   

    move(pchar(s)^,buff[0],length(s));S是什么啊?