动态数组的 标示 a 等于 a[0].其他的我也不清楚。up

解决方案 »

  1.   

    怎么对静态数组进行比较?普通的< > <> 是不行的。怎么办?
      

  2.   

    if Length(A)=Length(B) then
    begin
      for i:=Low(A) to High(A) then
        if A[i]<>B[Low(B)+i] then
        begin
          Writeln('A<>B');
          break;
        end
      Writeln;
    end
    else
      Writeln('A<>B');
    数组的比较:除非是两个数组变量一起定义,如:var A,B : array of Integer;
    才可以进行相互赋值,如:A:=B;
    只有先前进行了A:=B;的赋值,且都没有变化,(A=B)才为True;
    否则,就要用我前面的那种方法来确定A是否等于B!
      

  3.   

    动态数组是这样的,这点我知道:)
    用object pascal language guide 的话说,这是因为PASCAL是以
    “name-equivalence”规则判定类型的,具有相同类型名的变量才
    被认为是同类型的,而“var A,B : array of Integer”中的
    “ array of Integer”根本就不是类型名,所以它不被认为是同
    类型的。不知我的理解对不对?请指教。我的意思是对   静态数组  的比较除了编这“串”比较代码以外,就没有什么简便的
    比较方法?在object pascal language guide中的关于静态数组的部分没有提
    及它们的比较的内容。但用诸如<、>、<>这样运算符时,delphi6提示运算符不适用
    于这种操作数类型。唉!