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

Описание переменных

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

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

Общий синтаксис описания переменных следующий (в квадратных скобках указаны необязательные части конструкции, в угловых – текст, который должен быть заменен на лексемы или конструкции языка C):

[<модификаторы>] <тип> <имя1>[=<константное выражение1>] [, <имя2>[=<константное выражение2>] ...];

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

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

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

Константное выражение – это выражение, не содержащее в качестве операндов переменных и вызовов функций, т.е. в нем операндами могут являться, в конечном счете, только константы. Такое выражение вычисляется на этапе компиляции и не требует для этого затрат времени при выполнении программы.

Значение константного выражения используется для инициализации описываемых переменных, т.е. присваивания им определенного начального значения. Переменные в языке C не инициализируются по умолчанию, как, например, в языке Pascal, так как это требует выполнения дополнительных операций и снижает производительность программы. Значение неинициализированной переменной заранее неизвестно и определяется только состоянием ячеек памяти, отведенных под эту переменную, поэтому, при необходимости, инициализация должна быть выполнена явно. Следует отметить, что инициализация переменной возможна только при ее определении, что гарантирует ее однократную инициализацию во всей программе.

В следующих примерах показано, что инициализация переменных в одном описании выполняется независимо друг от друга:

int i = 0; int a, b;

double x, y, sum = 0.0, k0 = 1, dx;

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