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



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

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

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

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

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

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

Паскаль. Как переместить значение локальной переменной в глобальную?
Раз вторая переменная глобальная, то вы можете прямо в процедуре присвоить этой глобальной
подробнее...

Зачем нужны замыкание в JavaScript? И что это такое?
Чтобы сохранить локальную переменную после завершения функции и использовать при запуске 2-ого,
подробнее...
спросили в Static X
В каких случаях в Си надо использовать переменные static, а не глобальные переменные?
Если переменная объявлена как static,то компилятор выделяет ей как и глобальной переменной
подробнее...

Что такое глобальные, формальные, локальные, фактические параметры в информатике. Turbo Pascal.
Во-первых, sm прав - это не параметры, а переменные.
Во-вторых, тут все дело в области
подробнее...

Какими значениями инициализируются переменные по умолчанию (java)?
Таблица дефолтных значений -
Инициализируются только переменные на уровне класса. Локальным
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
спросили в Дно
Объясните пожалуйста обычным языком что такое стековая память,её дно и зачем она нужна!!??заранее спасибо)
Магазин от АКМ (или от пистолета) видели - вот это и есть стек. Впихивается элемент (патрон)
подробнее...

[Delphi] TChromium (dcef3) и куки. Требуется раздать разные куки разным TChromium.
Вроде бы и не нужно уже это событие обрабатывать в нынешних версиях, достаточно непосредственно
подробнее...
спросили в Интернет Denuvo
для чего нужны damp файлы и нужно ли их удалять самому?
Терминология
Дамп падения (в дальнейшем дамп) – специальный файл, собираемый с помощью
подробнее...
спросили в Dirt 4
Про ассемблер!! ! что такое РЕГИСТР?? ? и поподробнее...
Регистр - это определенный участок памяти внутри самого процессора, от 8-ми до 32-х бит длиной,
подробнее...

В чем разница между процедурным программирование и объектно-ориентированным?
Процедурное программирование подразумевает возможность создания в
рамках программы локальных
подробнее...
спросили в Static X
Оператор return в СИ
Оператор return возвращает то, что ты укажешь ему.
Оперируют в большинстве только со
подробнее...
спросили в Dirt 4 Randomness
Assembler
Вопрос 1
Вот макрос, генерирующий случайные числа от 0 до n-1. Алгоритм взят из модуля System
подробнее...

В чем смысл указателя this в С++ ?
Что такое this? Попробую ответить простым языком.

Допустим имеется некий метод в неком
подробнее...

Когда и зачем в java нужно использовать this. ?
В перечисленных ниже случаях без this не обойтись.

При необходимости обращаться к полям
подробнее...
Локальная переменная на Википедии
Посмотрите статью на википедии про Локальная переменная
 

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

Имя*

E-mail:*

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