Учебники

Tcl — типы данных

Примитивный тип данных Tcl — строка, и часто мы можем найти кавычки на Tcl как язык только для строк. Эти примитивные типы данных, в свою очередь, создают составные типы данных для списка и ассоциативного массива. В Tcl типы данных могут представлять не только простые объекты Tcl, но также могут представлять сложные объекты, такие как дескрипторы, графические объекты (в основном, виджеты) и каналы ввода-вывода. Давайте посмотрим на детали о каждом из вышеперечисленных.

Простые объекты Tcl

В Tcl, будь то целое число, логическое число, число с плавающей запятой или строка. Когда вы хотите использовать переменную, вы можете напрямую присвоить ей значение, в Tcl нет шага объявления. Могут быть внутренние представления для этих различных типов объектов. При необходимости он может преобразовывать один тип данных в другой. Синтаксис для присвоения значения переменной следующий:

Live Demo

#!/usr/bin/tclsh

set myVariable 18
puts $myVariable

Когда приведенный выше код выполняется, он дает следующий результат —

18

Приведенный выше оператор создаст имя переменной myVariable и сохранит ее в виде строки, хотя мы не использовали двойные кавычки. Теперь, если мы попытаемся сделать арифметику для переменной, она автоматически превращается в целое число. Простой пример показан ниже —

Live Demo

#!/usr/bin/tclsh

set myVariable 18
puts [expr $myVariable + 6 + 9]

Когда приведенный выше код выполняется, он дает следующий результат —

33

Важно отметить, что эти переменные не имеют никаких значений по умолчанию и должны быть назначены значения перед их использованием.

Если мы пытаемся печатать путями, число преобразуется в правильную строку. Наличие двух представлений, внутреннего и внешнего, помогает Tcl легко создавать сложные структуры данных по сравнению с другими языками. Кроме того, Tcl более эффективен благодаря своей динамической объектной природе.

Строковые представления

В отличие от других языков, в Tcl вам не нужно включать двойные кавычки, когда это всего лишь одно слово. Примером может быть —

Live Demo

#!/usr/bin/tclsh

set myVariable hello
puts $myVariable

Когда приведенный выше код выполняется, он дает следующий результат —

hello

Когда мы хотим представить несколько строк, мы можем использовать либо двойные кавычки, либо фигурные скобки. Это показано ниже —

Live Demo

#!/usr/bin/tclsh

set myVariable "hello world"
puts $myVariable
set myVariable {hello world}
puts $myVariable

Когда приведенный выше код выполняется, он дает следующий результат —

hello world
hello world

Список

Список — это не что иное, как группа элементов. Группа слов, использующая двойные кавычки или фигурные скобки, может использоваться для представления простого списка. Простой список показан ниже —

Live Demo

#!/usr/bin/tclsh

set myVariable {red green blue}
puts [lindex $myVariable 2]
set myVariable "red green blue"
puts [lindex $myVariable 1]

Когда приведенный выше код выполняется, он дает следующий результат —

blue
green

Ассоциативный массив

Ассоциативные массивы имеют индекс (ключ), который не обязательно является целым числом. Обычно это строка, которая действует как пары ключ-значение. Простой пример показан ниже —

Live Demo

#!/usr/bin/tclsh

set  marks(english) 80
puts $marks(english)
set  marks(mathematics) 90
puts $marks(mathematics)

Когда приведенный выше код выполняется, он дает следующий результат —

80
90

рукоятки

Дескрипторы Tcl обычно используются для представления файлов и графических объектов. Они могут включать дескрипторы сетевых запросов, а также другие каналы, такие как последовательный порт, сокеты или устройства ввода-вывода. Ниже приведен пример, где создается дескриптор файла.

set myfile [open "filename" r]

Подробнее о файлах вы узнаете в главе « Ввод / вывод файла Tcl» .