Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
{
int j = 20;
if (i == 10)
{
double Pi = 3.14;
……..
}
}
В этой функции все переменные (i, j, Pi) являются локальными автоматическими объектами. Переменные i и j создаются в памяти в начале выполнения функции и уничтожаются при выходе из функции. Время жизни и область видимости этих переменных одинаковы и соответствуют всему телу функции. Переменная Pi создается в памяти, когда начинает выполняться соответствующий блок инструкции if, и уничтожаются при выходе из этого блока.
Спецификатор register используется довольно часто для увеличения быстродействия программы. Этот спецификатор “просит” компилятор поместить соответствующую переменную в памяти так, чтобы доступ к ней осуществлялся как можно быстрее. Регистровые переменные размещаются либо в регистрах процессора, либо в кэш-памяти компьютера. Поскольку объем такой памяти ограничен, компилятор эту “просьбу” может и не выполнить. В этом случае регистровые переменные создаются как обычные автоматические переменные. Пример определения регистровой переменной:
register double d = 1.23;
С помощью спецификатора класса памяти extern осуществляется обращение к глобальным переменным, определенным либо в других файлах проекта, либо далее в этом же файле. Например:
Void F ()
{
Дата публикования: 2014-11-28; Прочитано: 178 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!