Показано с 1 по 5 из 5

Тема: Форматирование вывода в CodeSys

  1. #1

    По умолчанию Форматирование вывода в CodeSys

    А нельзя ли в порядке развития системных библиотек сделать sprintf() в CodeSys? Я даже подозреваю, что она там есть где-то в недрах, нужно только вытащить на интерфейс. Это позволило бы избежать танцев с бубном, то бишь с крайне примитивными INT_TO_STRING(), REAL_TO_STRING(), типом STRING, которые на ПЛК выгдядят особенно неуместно.

  2. #2

    По умолчанию

    oscat.de

    REAL_TO_StrF
    Возможно поможет

    Насчет вытаскивания sprintf, есть определенные сомнения по поводу формирования списка аргументов. Просто передать указатель на специально подготовленный массив указателей - проблема при распаковке внутри. К тому же злой ARM (процессор) не принимает ошибочное выравнивание. Поэтому при упаковке/распаковке придется это учитывать. Вообщем не стоит это усилий.

    Я извиняюсь за Международный Технический Комитет, который в далеком 198х году не учел пожелания ВСЕХ программистов. А если серьезно, любой язык призван обеспечить функционал для того применения где это нужно. У языков IEC 61131-3 свои задачи и форматирование строк на контроллерах, ИМХО, это мало востребованая функция.
    Последний раз редактировалось Малышев Олег; 10.12.2008 в 10:31.

  3. #3

    По умолчанию

    Цитата Сообщение от Малышев Олег Посмотреть сообщение
    Насчет вытаскивания sprintf, есть определенные сомнения по поводу формирования списка аргументов.
    Ну, тогда по кусочкам . В принципе устроило бы наличие отдельных преобразований для %i, %f, %X, но конечно, с параметрами width, precision. Возможно, Вы на это ссылку и давали, но увы - я по немецки не спикаю .

  4. #4

    По умолчанию

    Качайте одну библиотеку - она доступна в исходниках. Да и комментарии на английском.

  5. #5

    По умолчанию

    Кстати, если говорить о визуализации в CoDeSys, то sprintf() в ней реализован. Обычно в поле вывода текста пишут '%s', но тут можно писать любые форматы printf.

Ваши права

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