Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры прога 2.docx
Скачиваний:
1
Добавлен:
18.09.2019
Размер:
83.31 Кб
Скачать

Пустой оператор

состоит из ; При выполнении его ничего не происходит. Используется в операторах do, for, while, if в случаях, когда тело оператора не требуется, но оно должно быть.

For(…){

For(…){

while(…){

if(…) go t end;

}}}

end:; }

18.1.Классы памяти.

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

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

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

Класс памяти static указывает на то, что переменная явл локализованой в блоке, но сохраняет свое значение при повторном входе в блок.

Класс памяти extern означает, что переменная сохраняет свое значение в течение всего времени выполнения программы.

Переменная класса памяти register хранится, если это возможно , в регистре, для повышения скорости выполнения программы. Время жизни для переменной этого класса такое же как для auto. Регистровая память может быть назначена только для типов int и указателей ,имеющих тот же размер, что и int. Если переменная объявлена с классом register , а свободных не оказалось, то ей назначают класс auto.Объкты класса auto и register имеют локальное время жизни, а объекты классов static и extern – гловальное, но точный смысл

18.2.Классы памяти.

каждого из идентефикаторов зависит от того, а каком уровне, внутреннем или внешнем, объявлена переменная и от того, явл объект ф-цией или переменной.

19.1. Функции. Определение ф-ций.

Любая программа состоит только из ф-ций. Ф-ция – это независимая совокупность объявлений и инструкций, приводящая к решению определенной задачи. Каждая ф-ция имеет имя, для вызова ф-ции. В каждой программе есть только одна ф-ция именем main, с к-рой начинается выполнение программы. При вызове ф-ции ей могут быть переданы параметры посредством переменных. Ф-ция может возвращать значение, это значение- оновной результат ф-ции.

С использованием ф-ции в Си связаны:

  1. определение ф-ции

  2. объявление ф-ции

  3. вызов ф-ции