数组:
 buff1 : array [1..1024] of char;
 buff2 : array [1..1024] of char;
 buff3 : array [1..2048] of char;求:
 buff3:=buff1+buff2up有分

解决方案 »

  1.   

    因为数组实际上是地址,所以不能实现你这种加法实现如下:
    setLength(buff3,Length(buff2)+Length(buff1));
    for i:=0 to Length(buff1)-1 do
      buff3[i]:=buff[i];for i:=0 to Length(buff2)-1 do
      buff3[Length(buff1)-1+i]:=buff2[i];
      

  2.   

    var
        list,list1:TStrings;
        i:integer;
    begin
        list := TStringList.Create();
        list1 := Tstringlist.Create();
        list.Add('a');
        list1.Add('b');
        list.AddStrings(list1);    listbox1.Items := list;    list.Free;
        list1.free;
    end;
      

  3.   

    Pascal 和C中的数据不同,不能像操作指针那样!要求速度,你可以用链表啊,指针操作快点。
      

  4.   

    如果是纯数组合并,(不是类,也不需要排序)
    直接
    CopyMemory(buff3, buff1, sizeof(buff1));
    CopyMemory(buff3 + sizeof(buff1), buff2, sizeof(buff2));
      

  5.   

    CopyMemory(@buff3, @buff1, sizeof(buff1));
    CopyMemory(@buff3 [1024], @buff2, sizeof(buff2));
      

  6.   

    to  haoco(程序员) 如果是循环我就不到这里问了。
    没有答案?
      

  7.   

    很抱歉,一直写错:
    CopyMemory(@buff3, @buff1, sizeof(buff1));
    CopyMemory(@buff3 [1025], @buff2, sizeof(buff2));