Читать «Полный справочник по С++» онлайн - страница 16

Герберт Шилдт

В языке С длина идентификаторов может быть произвольной. Однако не все символы, образующие идентификатор, считаются значащими. Если идентификатор используется в процессе редактирования внешних связей, то значащими считаются, по крайней мере, шесть его первых символов. Эти идентификаторы называются внешними именами (external names). К ним относятся имена функций и глобальных переменных, используемых несколькими файлами. Если идентификатор не используется в процессе редактирования внешних связей, то значащими считаются, по крайней мере, 31 первый символ. Такие идентификаторы называются внутренними именами (internal names). К ним относятся, например, имена локальных переменных. В языке C++ нет ограничений на длину идентификаторов и значащими считаются, по крайней мере, 1024 первых символа. При переходе от языка с к языку C++ этот нюанс следует учитывать.

Символы, набранные в верхнем и нижнем регистре, различаются. Следовательно, count, Count и COUNT — это разные идентификаторы.

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

—J Переменные

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

тип список переменных;

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

Iint i,j,1;

short int si;

unsigned int ui;

double balance, profit, loss;

Учтите, в языке C/C++ имя переменной никак не связано с ее типом.

Где объявляются переменные

Как правило, переменные объявляют в трех местах: внутри функций, в определении параметров функции и за пределами всех функций. Соответственно такие переменные называются локальными, формальными параметрами и глобальными.

Локальные переменные

Переменные, объявленные внутри функции, называются локальными (local variables). В некоторых книгах, посвященных языку C/C++, эти переменные называются автоматическими (automatic variables). В нашей книге мы будем придерживаться более общей терминологии и называть их локальными. Локальные переменные можно использовать только в операторах, расположенных внутри блока, где они объявлены. Иначе говоря, локальные переменные невидимы снаружи их блока. Напомним, что блок ограничен открывающей и закрывающей фигурными скобками.

Чаще всего локальные переменные объявляются внутри функций. Рассмотрим два примера.

voidfund (void)
{
intx;
х =10;
}
voidfunc2 (void)
{
intx;
x =-199;
}

Переменная х объявлена дважды: сначала — в функции finclO, а затем — в функции func2 (). Переменная х из функции fund О не имеет никакого отношения

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