OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 17 Февраль, 2019 12:26

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
СообщениеДобавлено: Среда, 06 Февраль, 2008 00:08 

Зарегистрирован: Воскресенье, 03 Февраль, 2008 12:50
Сообщения: 232
В C# есть такая версия метода WriteLine:

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

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

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

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

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 06 Февраль, 2008 05:52 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2291
Откуда: Россия, Санкт-Петербург
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.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 06 Февраль, 2008 11:30 

Зарегистрирован: Воскресенье, 03 Февраль, 2008 12:50
Сообщения: 232
Цитата:
Если, то что? ; )

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

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 06 Февраль, 2008 11:53 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9084
Откуда: Россия, Орёл
Нет, т.к. WritenLn в Паскалях является не бибилиотечной процедурой, а особым предопределённым элементом языка. Процедуру с переменным числом параметров объявить нельзя.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 06 Февраль, 2008 12:00 

Зарегистрирован: Воскресенье, 03 Февраль, 2008 12:50
Сообщения: 232
Все понятно! Всем спасибо!


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


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

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2019, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB