Это амбициозно; ИСПОЛЬЗУЙТЕ СПЕЦИАЛЬНО-ЯЗЫКОВЫЕ ТЕГИ, КОГДА-ЛИБО ПРИМЕНИМЫ Переменная является именованным местом хранения данных в памяти. Используя переменные, компьютерная программа может хранить числа, текст, двоичные данные или комбинацию любого из этих типов данных. Они могут быть переданы в программе.

переменнаяявляется именованным местом хранения данных в памяти. Используя переменные, компьютерная программа может хранить числа, текст, binary-dataили комбинацию любого из этих типов данных. Они могут передаваться в коде между функциями или даже между приложениями.

Переменные, доступные только внутри определенных функций, называются «локальными переменными». «Глобальная переменная» или переменная с неопределенной областью действия может указываться в любом месте программы.

В некоторых programming-languagesпеременные ограничены конкретным типом данных. Типы данных могут различаться в зависимости от языка, но имеют много общего.

Примитивные типы данныхобычно включают в себя:

  • символ, символ, строка, varchar (текст)
  • byte, short, int, tinyint, integer, long (целые числа)
  • double, decimal, float (действительные числа)
  • немного, логическое (true / false)
  • дата, дата и время (значения даты и времени)
  • объект (любое значение, включая составные типы)
  • двоичный, raw, varbinary (который хранит поток системных данных в двоичном виде)

Составные типы данныхсостоят из примитивных типов и даже других составных типов.

# an example composite type, in pseudo code
Person(
    'First name'  : string,
    'Surname'     : string,
    'Birthday'    : date,
    'CanProgram'  : boolean
)

Некоторые языки содержат дополнительные примитивы: кортежи (Python), связанные списки (Lisp), хеш-таблицы (Lisp, Perl, Python, Lua, D).

Некоторые языки программирования допускают переменные, в которых хранятся функции, которые могут храниться в структурах данных, передаваться в качестве параметров другим функциям или возвращаться в результате других функций.

Выделение памяти

Особенности распределения переменных и представления их значений сильно различаются как среди языков программирования, так и среди реализаций данного языка. Многие реализации языка выделяют пространство для локальных переменных, степень которых длится один вызов функции в стеке вызовов и чья память автоматически восстанавливается при возврате функции. В более общем смысле в привязке имени имя переменной связано с адресом некоторого конкретного блока (непрерывной последовательности) байтов в памяти, и операции над этой переменной управляют этим блоком. Ссылка чаще встречается для переменных, чьи значения имеют большие или неизвестные размеры при компиляции кода. Такие переменные ссылаются на местоположение значения вместо хранения самого значения, которое выделяется из пула памяти, называемого кучей.

Дополнительная информация и справочные материалы в Википедии.