- •6. Группировка параметров двойными кавычками
- •11.В каких случаях квадратные скобки не интерпретируются как команда?
- •12. Как выполняется подстановка переменных в Tcl?
- •13. В каких случаях не выполняется подстановка переменных в поле параметров?
- •14. Как выполняется в Tcl подстановка переменных в массивах?
- •15. Для какой цели в Tcl используется точка с запятой?
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";