Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы lab1 сети.docx
Скачиваний:
8
Добавлен:
25.11.2018
Размер:
41.11 Кб
Скачать

12. Как выполняется подстановка переменных в Tcl?

Подстановка переменных при помощи $

Знак доллара $ может использоваться для подстановки значений переменных. Необходимо отметить, что подстановка значения не происходит в пределах полей параметров, ограниченных изогнутыми скобками! Символы после знака $ до первого символа не являющегося цифрой, буквой или подчеркиванием составляют имя переменной. Рассмотри следующую последовательность команд:

set x Joe;

set y $x;

эквивалентно команде:

set y Joe

Существует две формы для подстановки переменный. Если следующий символ после названия переменной - открывающая круглая скобка, то переменная является именем массива, и все символы между открывающей круглой скобкой и следующей ближайшей закрывающей круглой скобкой являются индексом в массиве. Необходимо отметить, что в пределах круглых скобок, задающих индекс массива может использоваться подстановка переменных. Например, если переменная myArray - массив из двух элементов, индекс певого first и значение Value of the first, индекс второго second и значение Value of the second, то команда

set x $myArray(first);

является эквивалентным команде:

set x "Value of the first";

Рассмотрим другой пример:

set y second;

set x $myArray($y);

Здесь проиллюстрировано использование подстановки переменных в пределах круглых скобок, задающих индекс массива. Примеры задания массивов рассмотрены далее.

Вторая форма подстановки переменных имеет место когда за знаком доллара следует левая изогнутая скобка. В этом случае имя переменной состоит из всех символов до соответствующей закрыващей изогнутой скобки. Необходимо отметить, что в этом случае переменная должна являться скаляром, но не массивом. Пусть переменная x имеет значение Joe. Тогда команда:

set y ${x}Sakic

является эквивалентным команде:

set y JoeSakic

Подстановка переменных не происходит в параметрах, которые включены в изогнутые скобки.

Следует отметить, что знак доллара является просто сокращением общей формы [set var]. Так напрмер, запись $var является сокращенной формой [set var].

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

Подстановка переменных не происходит в параметрах, которые включены в изогнутые скобки.

Следует отметить, что знак доллара является просто сокращением общей формы [set var]. Так напрмер, запись $var является сокращенной формой [set var].

14. Как выполняется в Tcl подстановка переменных в массивах?

Если следующий символ после названия переменной - открывающая круглая скобка, то переменная является именем массива, и все символы между открывающей круглой скобкой и следующей ближайшей закрывающей круглой скобкой являются индексом в массиве. Необходимо отметить, что в пределах круглых скобок, задающих индекс массива может использоваться подстановка переменных. Например, если переменная myArray - массив из двух элементов, индекс певого first и значение Value of the first, индекс второго second и значение Value of the second, то команда

set x $myArray(first);

является эквивалентным команде:

set x "Value of the first";