zoukankan      html  css  js  c++  java
  • 在 delphi (Object Pascal 语言)中,使用 array 关键字进行数组定义。

    如果需要定义二维数组可以采取以下定义形式:

    一、静态数组定义

    静态数组定义,通常用于数组元素的数目确定的情况。定义形式如下:

    示例:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    type
      //定义二维数组类型
      TMultiArr = array[1..3,1..3of string
    var
      MultiArr: TMultiArr;
       
        //定义 行12*列12 的 Integer 数组
       IntArr: array[1..12of array[1..12of Integer;
        
       //定义 行5*列5 的 string 数组
      StrArr: array[1..5,1..5of string;

    二、动态数组定义 

    动态数组常用于当数组的元素数目不确定的时候,其定义形式如下:

    1
    2
    3
    4
      SamArr: array of array of Integer//定义二维数组,数组元素不确定
     
      type TMessageGrid = array of array of string//定义二维数组类型,数组元素不确定
      var Msgs: TMessageGrid; //声明一个二维数组类型变量

     

    二维动态数组的元素数目,可以通过 SetLenth 来动态指定,示例代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    procedure TForm1.Button3Click(Sender: TObject);
    type TMultiArr = array of array of string;
    var
      a: TMultiArr;
      I, J: Integer;
      s: string;
    begin
      SetLength(a, 10);
      for I := Low(a) to High(a) do
      begin
        SetLength(a[I], I);
        for J := Low(a[I]) to High(a[I]) do
          a[I, J] := IntToStr(I) + ',' + IntToStr(J) + ' ';
      end;
      for I := Low(a) to High(a) do
      begin
        s := '';
        for J := Low(a[I]) to High(a[I]) do
          s := s + ' ' + a[I, J];
        Memo1.Lines.Add(s);
      end;
    end;

    代码运行截图:

    1,0

    2,0  2,1

    3,0  3,1  3,2

    4,0  4,1  4,2  4,3

    5,0  5,1  5,2  5,3

    6,0  6,1  6,2  6,3  6,4  6,5

    7,0  7,1  7,2  7,3  7,4  7,5  7,6

    8,0  8,1  8,2  8,3  8,4  8,5  8,6  8,7

    9,0  9,1  9,2  9,3  9,4  9,5  9,6  9,7  9,8

  • 相关阅读:
    [转载]很完整的2、8、10、16进制转换方法
    [转载]C++星号的含义
    [转载]C++星号的含义
    [转载]麦凯66表格
    [转载]js入门·对象属性方法大总结
    [转载]图解《越狱》中纸玫瑰的折法
    [转载]比较开始日期与结束日期的js方法
    Cannot set device tcp segmentation offload settings: Invalid argument
    记一次薪酬谈判的教训
    TCP拥塞状态机的实现(中)
  • 原文地址:https://www.cnblogs.com/h2zZhou/p/11435046.html
Copyright © 2011-2022 走看看