локальные и глобальные переменные



Локальная переменная это

Автор Streetscorpion задал вопрос в разделе Другие языки и технологии

Локальные и глобальные изменения в С + +области видимости и получил лучший ответ

Ответ от Николай Веселуха[гуру]
Существует четыре описателя классов памяти: auto; static; register; extern. Первые три описывают локальные переменные. Причём auto уже не указывается. Все переменные по умолчанию auto. regiser также утратил свою первоначальную роль. Ранее, если в программе указывался этот описатель, то под переменную память выделялась в стеке. То теперь решение выделять память в стеке полностью отдано на откуп операционной системе. Может выделить, а может и нет. Статическая переменная обладает тем важным и очень полезным свойством, что будучи локальной, по отношению к функции в которой она используется, она сохраняет последнее присвоенное ей значение и после окончания работы функции, и хранит это значение до следующего вызова функции. extern - описывает класс памяти глобальных переменных. Глобальная переменная должна быть обязательно инициализирована в месте объявления. Функция может использовать глобальную переменную даже в том случае если она определена позже в этом либо другом файле. Областью действия такой переменной является вся программа. Чтобы использовать такую переменную в других файлах программы она должна быть в них описана. Например так.. . extern int n; // Без повторной инициализации. Время жизни переменной - время выполнения программы. Использование глобальных переменных не желательно и не рекомендовано. То есть, если существует возможность обойтись без глобальной переменной, значит предпочтение стоит отдать локальной переменной. Также можно объявить статическую внешнюю переменную, которая в отличие то глобальной будет видна только в том файле, в котором он объявлена. Это даёт возможность избежать вызова переменной из другого файла программы. Область видимости локальной переменной ограничена блоком программы, в котором она объявлена. Блок программы эта область заключённая в фигурные скобки. Если в программе существует блок вложенный в другой блок, и каждый из них имеет переменную с одним именем, то переменная расположенная во внешнем блока является глобальной по отношению к той, которая расположена во внутреннем блоке. Важно! Локальная переменная, имеет преимущество перед одноименной глобальной переменной. Это значит, что, переменная расположенная во внешнем блоке, теряет из области видимости внутренний блок, по причине того, что там расположена одноименная переменная. Вроде всё! Удачи!

Ответ от Travis[гуру]
1 2 скомпилируешь что-то из материалов по вышеприведённым ссылкам

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Локальные и глобальные изменения в С + +области видимости
Локальная переменная на Википедии
Посмотрите статью на википедии про Локальная переменная
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*