OberonCore
https://forum.oberoncore.ru/

Вывод в Log отформатированной строки
https://forum.oberoncore.ru/viewtopic.php?f=35&t=856
Страница 1 из 1

Автор:  kemiisto [ Среда, 06 Февраль, 2008 00:08 ]
Заголовок сообщения:  Вывод в Log отформатированной строки

В C# есть такая версия метода WriteLine:

Console.WriteLine("В феврале {0} или {1} дней.", 28, 29);

Первый параметр - строка, которая содержит place-holders (не знаю как это по-русски :( ), которые обозначаются {0}, {1} и т.д. Оставшиеся параметры - то, что будет вставлено вместо place-holders при выводе на консоль.

Так, например результатом выполнения вышеуказанной строчки кода будет:

В феврале 28 или 29 дней.

:?: Если в ББ нечто подобное?

Автор:  Александр Ильин [ Среда, 06 Февраль, 2008 05:52 ]
Заголовок сообщения:  Re: Вывод в Log отформатированной строки

kemiisto писал(а):
place-holders (не знаю как это по-русски :( )

Можно "заменяемые элементы".
kemiisto писал(а):
:?: Если в ББ нечто подобное?

Если, то что? ; )

См. Dialog.MapParamString:
Код:
MODULE Test;

   IMPORT Dialog, Log := StdLog;

   PROCEDURE Do* ();
      VAR str: ARRAY 64 OF CHAR;
   BEGIN
      Dialog.MapParamString("В феврале ^0 или ^1 дней.", "28", "29", "", str);
      Log.String(str); Log.Ln
   END Do;

END Test.

Автор:  kemiisto [ Среда, 06 Февраль, 2008 11:30 ]
Заголовок сообщения:  Re: Вывод в Log отформатированной строки

Цитата:
Если, то что? ; )

Спасибо, что не стали придираться :D Ночью голова плохо работает...

:?: А можно еще вопросик: есть ли аналог Writeln() такого как в Pascal/Delphi, когда в скобках через запятую перечисляются переменные разных типов: Writeln('a = ', a).

Автор:  Илья Ермаков [ Среда, 06 Февраль, 2008 11:53 ]
Заголовок сообщения:  Re: Вывод в Log отформатированной строки

Нет, т.к. WritenLn в Паскалях является не бибилиотечной процедурой, а особым предопределённым элементом языка. Процедуру с переменным числом параметров объявить нельзя.

Я когда-то "развлекался" - для отладки ядра делал процедуру PrintVars("x, y, z"), которая по символьно переданному списку переменных брала их значения из стека и выводила в лог. Чуть доработав, можно получить полный аналог подстановки в строку значений переменных, как в PHP, например. Только - "от лукавого сие" :-), наворот малополезный...

Автор:  kemiisto [ Среда, 06 Февраль, 2008 12:00 ]
Заголовок сообщения:  Re: Вывод в Log отформатированной строки

Все понятно! Всем спасибо!

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/