Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование программ и программирование на С++ Часть 1. Структурное.pdf
Скачиваний:
18
Добавлен:
15.11.2022
Размер:
3.8 Mб
Скачать

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

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

деленная такой переменной, будет освобождаться,

i n t *

f ( )

{

 

 

i n t

а;

 

r e t u r n

& а ; / / ОШИБКА!

}

Глобальные переменные - это переменные, описанные вне функ­ ций. Они видны во всех функциях, где нет локальных переменных

с такими именами.

i n t

a , b ;

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

v o i d c h a n g e ()

{

 

 

i n t

г ;

/ / л о к а л ь н а я п ерем ен ная

г = а;

 

 

а=Ь;

 

 

Ь = г ;

 

 

}

 

 

v o i d

m a i n ()

{

c i n > > a , b ; c h a n g e ( ) ;

c o u t « ,/a = " « a « " b = " « b ;

}

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]