Список присоединения при возврате каретки - PullRequest
0 голосов
/ 17 марта 2020

В TCL при присоединении списка к возврату каретки, например, так:

set myList {{a} {b} {c} {d} {e} {f} {g}}
puts [join $myList \r]

Вывод на экран выводится:

g

Если я вместо этого сделаю следующее:

set myList {{a} {b} {c} {d} {e} {f} {g}}
puts [join $myList \n]

Вывод

a
b
c
d
e
f
g

Что делает возврат каретки "\ r" в соединении только с "g", тогда как использование новой строки "\ n" дает мне все в списке?

1 Ответ

1 голос
/ 17 марта 2020

Это больше связано с выводом, чем с Tcl join. Ваш вывод (например, консоль / оболочка) может не отображать возврат каретки.

Например, если вы сделаете:

set myList {{a} {b} {c} {d} {e} {f} {g}}
set result [join $myList \r]
puts [string length $result]

В качестве вывода вы получите 13, показывая, что строка верна.

Если вы можете изменить расположение вывода, например, на текстовый файл, а затем открыть файл в редакторе, который может распознавать возврат каретки как символ, обозначающий изменение в строке (я использовал Notepad ++ для тестирования), вы увидите, что вывод в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...