Инструкции

Переменные

 

Пример 7. Описание переменных

int a,с;

float x;

Общий вид оператора описания:

[класс памяти][const] тип имя [инициализатор];

Const – показывает, что эту переменную нельзя изменять (именованная константа).

При описании можно присвоить переменной начальное значение (инициализация).

int x=4; //определение и инициализация х

Классы памяти: auto,register, extern, static.

 

Пример 8.

int a; //глобальная переменная

void main()

{

int b; //локальная переменная

extern int x; //переменная х определена в другом месте

static int c; //локальная статическая переменная

a=1; //присваивание глобальной переменной

int a; //локальная переменная а

a=2; //присваивание локальной переменной

}

a=3; //присваивание глобальной переменной

int x=4; //определение и инициализация х

 

Пример 9.

float f ; // глобальная переменная – к ней можно обращаться из любого

// места программы

int main()

{

f = 3.17;

double d = 2.2;

int i = 7;

if (f = = 5.0)

{

float f2 = f + 10;

}

f2 = 14.87; // ошибка – вышли из области видимости переменной

d = d + i;

return 0;

}

Обратите внимание: = означает оператор присваивания,

== проверку равенства.

Пример 10.

int x = 0; // объявление и инициализация глобальной переменной x

void f()

{

int x = -1; // локальная переменная x скрывает глобальную x

{

int x; // объявление без инициализации новой

// переменной скрывает

// предыдущую локальную переменную x

x = 2; // присваивание второй локальной переменной x

}

x = 3; // присваивание первой локальной переменной x

}

int *p = &x; // взятие адреса глобальной переменной x

 

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

 

Инструкции задают последовательность вычислений в программе.

Все инструкции языка C++, кроме блоков инструкций, заканчиваются точкой с запятой (;).

Одна инструкция может занимать одну или более строк. Две или большее количество инструкций могут быть расположены на одной строке.

В табл. 4 приведена сводка инструкций языка C++:

 

Таблица 4

Список инструкций языка C++

Тип инструкции Синтаксис инструкции, примечания
Пустая инструкция ;
Блок {последовательность инструкций}
Объявление Объявления переменных, структур, классов, функций
Инструкция-выражение выражение;
Ветвление по условию if if (условие) инструкция
Ветвление по условию if / else if (условие) инструкция 1 else инструкция 2
Инструкция выбора switch switch (выбирающее выражение) { объявления case константа 1: последовательность инструкций 1 case константа 2: последовательность инструкций 2 … case константа N: последовательность инструкций N default: последовательность инструкций }
Циклwhile while (условие) инструкция
Цикл do / while do инструкция while (условие)
Цикл for for (инициализирующее выражение; условие; модифицирующее выражение) инструкция
Инструкция прекращения break break;
Инструкция прекращения с продолжением continue continue;
Инструкция возврата return return выражение;
Безусловный переход goto goto идентификатор; … идентификатор: инструкция
Контроль и обработка исключений try / catch try { последовательность инструкций, генерирующих исключения } catch (тип1 arg) { последовательность инструкций, обрабатывающих исключения типа1 } catch (тип2 arg) { последовательность инструкций, обрабатывающих исключения типа2 } … catch (типN arg) { последовательность инструкций, обрабатывающих исключения типаN }
Генерация исключения throw throw expr; //тип выражения //идентифицирует генерируемое исключение

 

Инструкции, включая инструкции, изменяющие порядок выполнения программы (if, if / else, switch, while, do / while, for, исключения), могут вкладываться друг в друга, что даёт возможность строить весьма сложные со многими путями выполнения программы.

 

4.4. Основные операторы языка C++