PDA

Просмотр полной версии : Массив из одного элемента



Kliper
07.09.2026, 21:46
Здравствуйте, товарищи овеновцы.
А почему в ST невозможен массив из одного элемента?
Хотелось бы увидеть сию реализацию

kondor3000
07.09.2026, 21:52
Здравствуйте, товарищи овеновцы.
А почему в ST невозможен массив из одного элемента?
Хотелось бы увидеть сию реализацию

А чем обычная переменная не устраивает? Массив из 1 элемента -это нонсенс.

Kliper
07.09.2026, 22:23
Это не нонсенс. Вчера было 10 элементов, а сегодня в другом проекте 1. И что переделывать весь макрос?

kondor3000
07.09.2026, 22:36
Это не нонсенс. Вчера было 10 элементов, а сегодня в другом проекте 1. И что переделывать весь макрос?

Выкиньте макрос и поставьте 1 переменную.
Или сделайте массив на 2 элемента, из 0 и 1, а используйте только 1.

Kliper
07.09.2026, 22:43
Оба варианта - мимо.

Dimensy
08.09.2026, 07:45
Здравствуйте, товарищи овеновцы.
А почему в ST невозможен массив из одного элемента?
Хотелось бы увидеть сию реализацию

Может быть потому, что массив - это набор элементов, а какой может быть набор из одного элемента?

melky
08.09.2026, 09:32
Массив из одного это нормально, если в языке есть функционал увеличения, уменьшения размера массива.
Это с ST не лады какие-то :)

Емельянов Кирилл
09.09.2026, 02:23
массив на 11 элементов, в первом кол-во используемых элементов - не?

Khedron
09.09.2026, 10:21
Может быть потому, что массив - это набор элементов, а какой может быть набор из одного элемента?

Это с ST не лады какие-то :)
В стандарте нет ограничения на минимальное количество элементов.
Проверил на S7-300, S7-1500, ПЛК200 - везде можно сделать ARRAY [0..0] OF.
Это именно проблема реализации ST в Owen Logic.

Cs-Cs
09.09.2026, 11:48
Более того. Даже сам CodeSys, если задать ему чтение 1 (одного) регистра в Modbus, потом выводит это как ARRAY [0..0] OF WORD.
Вот скрин (из SP5, он под рукой был):
90284

Kliper
09.09.2026, 18:37
Может быть потому, что массив - это набор элементов, а какой может быть набор из одного элемента?

Массив, может быть даже с нулевым количеством элементов (динамический массив)

Валенок
09.09.2026, 18:55
Массив, может быть даже с нулевым количеством элементов (динамический массив)
)) Давайте про Ложик.
Ваше

Это именно проблема реализации ST в Owen Logic.
Да.

Хоть [13..13]