--
--
Страница рассылки: http://groups.google.com/group/erlang-russian
Новости: http://erlanger.ru
Чат: xmpp://erl...@conference.jabber.ru
Чат для оффтопа: xmpp://erlang...@conference.jabber.ru
Написать письмо: erlang-...@googlegroups.com
Отписаться: erlang-russia...@googlegroups.com
Затем, что иногда format вызывается без параметров -- например так:io:format("This is a foobar application!", [])
и тогда строка формата являет собой обычное сообщение, которое может быть построенно где-то в другом месте
в таком случае вызов io:format(Message, []) был бы кстати.Но я похоже, что правильно с точки зрения значения параметров будет вызывать её так: io:format("~s", [Message]) -- так даже больше смысла "читается" из конструкции.
Колесо сансары вечно. Думаю, что эта идея возникла ещё с
метапрограммирования перфокарт.
On Thursday 09 August 2012 13:54:17 Aleksandr Vinokurov wrote:
> Затем, что иногда format вызывается без параметров -- например так:
>
> io:format("This is a foobar application!", [])
>
> и тогда строка формата являет собой обычное сообщение, которое может быть
> построенно где-то в другом месте и как раз в виде iolist-а его построить
> будет удобнее, например так:
>
> Title = [choose_greeting(State), username(State)],
> Body = get_body(State),
> Ending = choose_ending(State),
> Message = [Title, "\n", Body, "\n", Ending].
>
> в таком случае вызов io:format(Message, []) был бы кстати.
>
> Но я похоже, что правильно с точки зрения значения параметров будет
> вызывать её так: io:format("~s", [Message]) -- так даже больше смысла
> "читается" из конструкции.
А put_chars/1 и put_chars/2 для кого придуманы? Только для тех, кто мануалы читает?
--
Led
Так в utf нельзя будет написать, для этого нужно ~ts
А еще лучше сделать так :
io:format("~s",[Message]).
Ошибок меньше будет :)