Оператор присваивания (:=)
Бинарный оператор (:=) присваивает левому операнду значение правого операнда. Это единственный оператор, который выполняется справа налево. Левый операнд должен являться переменной, а правый операнд может являться константой, переменной или выражением. При этом типы данных операндов должны совпадать.
Оператор присваивания имеет самый низкий приоритет в таблице приоритетов и выполняется в последнюю очередь. Если правым операндом является выражение, то сначала вычисляется выражение, а в конце его результат присваивается левому операнду. Например, в выражении out := 2+2*2 сначала вычисляется выражение 2+2*2, а затем его результат 6 присваивается переменной X.
Последовательное присваивание по цепочке поддерживается только в языках FBD/LD, в синтаксисе языка ST любое выражение может содержать только один оператор присваивания.
Синтаксис на языке ST.
|
Синтаксис
|
|
out := in1
|
|
Примеры
|
|
//присваивание переменным фиксированных значений (констант)
in1 := true;
//присваивание переменой in1 значения переменной in2
in1 := in2;
//присваивание переменной результата выражения
in2 := 2 + 2 * 2;
//ошибка! попытка присвоить булевской переменной целочисленное значение
in1 := 5;
|
Синтаксис на языках FBD/LD.
|
Изображение блока
|
|
|
|
Примеры
|
![]() |
![]() |


