Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: n-мерные массивы  (Прочитано 1013 раз)

Серега

  • Старожил
  • ****
  • Сообщений: 254
    • Просмотр профиля
n-мерные массивы
« : 19 Августа 2024, 16:02:40 »
Добрый день!
На форуме довольно широко освещена тема использования массивов как с внешними переменными, так и в глобальном модуле.
НО что то не нахожу можно ли работать с 2-мерными массивами.
Можете выложить краткое пояснение, если есть такая возможность?

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3160
    • Просмотр профиля
    • Simple-Scada
Re: n-мерные массивы
« Ответ #1 : 20 Августа 2024, 10:04:21 »
Здравствуйте.

С внешними многомерными переменными-массивами (которые читаются с OPC-сервера) работать нельзя, поддерживаются только внешние переменные содержащие одномерные массивы.
Локальные многомерные переменные-массивы можно использовать также, как и одномерные массивы:
Код: (delphi)
var
  arr: array[1..3, 1..2] of integer;
begin
  arr[1, 1] := 10;
  arr[1, 2] := 20;
  arr[2, 1] := 30;
  arr[2, 2] := 40;
  arr[3, 1] := 50;
  arr[3, 2] := 60;

Проход по элементам двумерного массива:
Код: (delphi)
var
  i, j: Integer;
begin
  for i := 1 to 3 do
    for j := 1 to 2 do 
    begin
      // здесь работаем с элементом массива arr[i, j]
    end;   
end;