Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Климов. Лекции / Алг_яз_Лекция_26.pptx
Скачиваний:
20
Добавлен:
14.05.2015
Размер:
789.16 Кб
Скачать

В зависимости от области действия переменная может быть локальной или глобальной

Область действия идентификатора 11

Класс памяти определяет время жизни и область видимости программного объекта.

Если класс памяти не указан явным образом, он определяется компилятором исходя из контекста объявления.

12

Время жизни

Класс памяти

13

Класс памяти

14

Для задания

Класс памяти

15

Для глобальных переменных этот спецификатор не используется, а для

 

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

 

большого смысла не имеет

 

Класс памяти

16

Если переменная в том же операторе инициализируется,

 

спецификатор extern игнорируется

 

Класс памяти

17

Глобальные статические переменные видны только в том модуле, в котором

 

они описаны

 

Класс памяти

18

Класс памяти

19

int

a;

// 1 глобальная переменная а

int

main(){

 

 

 

 

int b;

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

extern int x;

// 3

переменная х определена в другом месте

static int с;

// 4

локальная статическая переменная с

а

= 1;

//

5

присваивание глобальной переменной

int a;

//

6

локальная переменная а

а

= 2;

//

7

присваивание локальной переменной

::а = 3; // 8 присваивание глобальной переменной return 0;

}

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

Пример

20

Соседние файлы в папке Климов. Лекции