Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Автоматические переменные






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

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

 

6.2.8.2. Регистровые переменные

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

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






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.