Инструкции

Справочный раздел

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

Разделы инструкций

В сети

Пользователей: 203
Из них просматривают:
Аналоги: 95. Даташиты: 57. Инструкции: 4. Новости: 12. Остальное: 2. Программы: 1. Профиль пользователя: 9. Теги: 2. Форум: 21.
Участников: 2
Гостей: 201

Google , Яндекс , далее...
Рекорд 3921 человек онлайн установлен 06.03.2026.

Партнёры


Партнёры

Новые объявления

В настоящее время нет объявлений.
Оглавление

Локальность и глобальность

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

 
Считается, что любое описание действительно только внутри блока, ограниченного фигурными скобками, где это определение реализовано. Для модуля аналогом фигурных скобок выступают начало и конец файла модуля. Любое объявление считается локальным по отношению к своему блоку.

 
Таким образом, все объявления, сделанные в начале модуля, «видимы» и доступны для любых функций этого модуля. Такие объявления называют глобальными для данного модуля. Итак, каждое объявление может быть локальным и глобальным одновременно, все зависит от точки отсчета.

 
Чтобы обеспечить видимость глобальных объявлений модуля из других модулей, необходимо вынести их в заголовочный файл, который подключить директивой #include в нужном модуле. Объявлять переменные в заголовочном файле - неверная практика, т.к. это может привести к многократному переобъявлению одних и тех же идентификаторов в различных модулях, т.е. всюду, где заголовочный файл будет подключен. Переменные и так по умолчанию считаются «видимыми» для других модулей, хотя для того, чтобы воспользоваться переменной из стороннего модуля, необходимо объявить ее внешней.

 
Кроме видимости, стоит упомянуть еще о действительности значений глобальных переменных. Считается, что глобальная переменная сохраняет свое значение в пределах блока своего описания. То есть, если значение глобальной переменной Cnt будет изменено функцией  foo(), то это значение будет действительно и для вызванной следом функции fee().

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.

Разное

Интересно

Канифоль можно изготовить самому, собрав в лесу сосновую (не еловую!) смолу и перетопив ее в консервной банке.