Показано с 1 по 10 из 606

Тема: Создать функцию на ST

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    09.12.2013
    Адрес
    Ставрополь
    Сообщений
    1,911

    По умолчанию

    Цитата Сообщение от ВладОвен Посмотреть сообщение
    А вот так можно использовать функцию в ST?
    Тут применены два оператора return внутри условия if.

    Код:
    FUNCTION myFunc: BOOL
    
    VAR
        a, b : INT;
    END_VAR
    
    ...
    ... Некие вычисления а и b
    ...
    
    IF a > b THEN myFunc:=FALSE; RETURN; END_IF
    IF a < b THEN myFunc:=FALSE; RETURN; END_IF
    
    myFunc:=TRUE; // Если условия не сработали, то возвращает TRUE
    
    (конец функции. Тут автоматический выход из неё)
    Эта функция возвращает false, если a и b неравны.
    Она возвращает true, если a и b равны.

    Правильна ли такая конструкция?
    а не проще написать так myFunc := (a = b)

  2. #2

    По умолчанию

    Цитата Сообщение от Dimensy Посмотреть сообщение
    а не проще написать так myFunc := (a = b)
    ну это ж просто пример 2-х return
    Тролль-наседка, добрый, нежный и ласковый

  3. #3
    Пользователь
    Регистрация
    05.07.2015
    Адрес
    Орехово-Зуево
    Сообщений
    216

    По умолчанию

    День добрый!
    А почему функцию на ST нельзя вставить в макрос ? Или надо какой то шаманский обряд совершить для этого ?
    Заранее благодарен.

  4. #4

    По умолчанию

    Цитата Сообщение от B.S.V Посмотреть сообщение
    День добрый!
    А почему функцию на ST нельзя вставить в макрос ? Или надо какой то шаманский обряд совершить для этого ?
    Заранее благодарен.
    На данном этапе так сделали, заведите выход функции как переменную на вход макроса и используйте.

  5. #5
    Пользователь
    Регистрация
    31.01.2019
    Адрес
    РФ/РБ
    Сообщений
    926

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    ну это ж просто пример 2-х return
    Так напишите лучший пример, ближе к реальным задачам.
    Зы. Прошу прощения, не вам мой ответ.
    В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик

Похожие темы

  1. Ответов: 14
    Последнее сообщение: 01.07.2023, 21:30
  2. Ответов: 6
    Последнее сообщение: 22.12.2021, 10:50
  3. Ответов: 3
    Последнее сообщение: 13.09.2021, 13:31
  4. ПЛК160. Чем заменить функцию записи 0x05?
    от FallenDAY в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 26.08.2017, 13:19
  5. Как написать собственную функцию wait()
    от PavelKazakov в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 23.07.2009, 11:37

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •