Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Тема. Типы переменных ПЛАН [0

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 24.11.2024

Тема. Типы переменных

ПЛАН

[0.1] Объявление переменных

[0.1.1] Локальные переменные

[0.1.2] Формальные параметры

[0.1.3] Глобальные переменные

Объявление переменных

Как уже знаем общий формат инструкции объявления переменных выглядит так:

тип список_первменяых;

Здесь элемент тип означает допустимый в C++ тип данных, а элемент список_переменных может состоять из одного или нескольких имен (идентификаторов), разделенных запятыми. Вот несколько примеров объявлений переменных.

int i, j, k;

char ch, chr;

float f, balance;

double d;

В C++ имя переменной никак не связано с ее типом.

Согласно стандарту C++ первые 1024 символа любого имени (в том числе и имени переменной) являются значимыми. Это означает, что если два имени различаются хотя бы одним символом из первых 1024, компилятор будет рассматривать их как различные имена.

Как уже видели, тип void используется для объявления функции, которая не возвращает значения. Другие возможности использования типа void рассматриваются позже.

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

Локальные переменные

Переменные, которые объявляются внутри функции, называются локальными. Их могут использовать только инструкции, относящиеся к телу функции. Локальные переменные неизвестны внешним функциям.

Рассмотрим пример.

#include <iostream>

using namespace std;

void func();

---------------------------------------------------------

int main()

{

int x; // Локальная переменная для функции main()

х = 10;

func();

cout << \n";

coufc << x; // Выводится число 10

return 0;

}

----------------------------------------------------------

void func()

{

int x; // Локальная переменная для функции func()

х = -199;

cout  << x;   //  Выводится  число  -199

}

Локальная переменная известна только функции, в которой она определена.

В этой программе целочисленная переменная с именем х объявлена дважды; сначала в функции main (), а затем в функции func (). Но переменная х из функции main() не имеет никакого отношения к переменной х из функции func (). Другими словами, изменения, которым подвергается переменная х из функции func(), никак не отражаются на переменной х из функции main(). Поэтому приведенная выше программа выведет на экран числа -199 и 10.

В C++ локальные переменные создаются при вызове функции и разрушаются при выходе из нее. То же самое можно сказать и о памяти, выделяемой для локальных переменных: при вызове функции в нее записываются соответствующие значения, а при выходе из функции память освобождается. Это означает, что локальные переменные не поддерживают своих значений между вызовами функций. (Другими словами, значение локальной переменной теряется при каждом возврате из функции.)

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

Формальные параметры

Формальный параметр — это локальная переменная, которая получает значение аргумента, переданного функции*

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

int   fund (int  first,   int  last,   char ch)

{

.

.

.

}

Здесь функция fund() имеет три параметра с именами first, last и ch. С помощью такого объявления сообщаем компилятору тип каждой из переменных, которые будут принимать значения, передаваемые функции. Несмотря на то что формальные параметры выполняют специальную задачу получения значений аргументов, передаваемых функции, их можно также использовать в теле функции как обычные локальные переменные. Например, можем присвоить им любые значения или использовать в каких-нибудь (допустимых для C++) выражениях. Но, подобно любым другим локальным переменным, их значения теряются по завершении функции.

Глобальные переменные

Глобальные переменные известны всей программе.

Чтобы придать переменной "всепрограммную” известность, ее необходимо сделать глобальной. В отличие от локальных, глобальные переменные хранят свои значения на протяжении всего времени жизни (времени существования) программы. Чтобы создать глобальную переменную, ее необходимо объявить вне всех функций. Доступ к глобальной переменной можно получить из любой функции.

В следующей программе переменная count объявляется вне всех функций. Ее объявление предшествует функции main(). Но ее с таким же успехом можно разместить в другом месте, главное, чтобы она не принадлежала какой-нибудь функции. Помните: поскольку переменную необходимо объявить до ее использования, глобальные переменные лучше всего объявлять в начале программы.

#include <iostream>

using namespace std;

void func1() ;

void func2();

int count; // Это глобальная переменная

------------------------------------------------------------

int main()

{

int i; // Это локальная переменная.

for(i=0; i<10; i++)

{

count = i * 2;

funcl();

}

return 0;

}

------------------------------------------------------------

void func1()

{

cout << "count: " << count; // Обращение к глобальной переменной

cout << “\n”; // Вывод символа новой строки.

func2();

}

----------------------------------------------------------

void func2() {

int count; // Это локальная переменная.

for(count=0; count<3; count++} cout << ' ';

}

Несмотря на то что переменная count не объявляется ми в функции main(), ни в функции func1(), обе они могут ее использовать. Но в функции func2() объявляется локальная переменная count. Здесь при обращении к переменной count выполняется доступ к локальной, а не к глобальной переменной. Важно помнить, что, если глобальная и локальная переменные имеют одинаковые имена, все ссылки на “спорное" имя переменной внутри функции, в которой определена локальная переменная, относятся к локальной, а не к глобальной переменной.

PAGE  1




1. . Juni 1918. Ich hbe heute Tschitscherin uf den Kopf zugesgt ich glubte zu wissen ds bei den Kmpfen um Jekterinenburg die Kiserliche Fmilie zu Schden gekommen sei
2. Системный подход в развитии образного мышления на уроках музыки
3.  Выезд ребенка совместно с родителями 1
4. Справочник радиолюбителя
5. Контрольная работа- Организация интерфейса в микро ЭВМ
6. . Перед составлением баланса следует проконтролировать правильность записи на счетах в течение отчетного пе.
7. Калининградская ЦБС по проведению новогодних праздничных мероприятий на период с 20 декабря 2013 по 10 янва
8. лекция ОМСК 2004 Вопросы лекции- 1
9. Охорона праці при роботі з персональним компютером
10. Тема 7 Рынок совершенной конкуренции При выборе масштабов производства производители руководствуются м
11. РЕФЕРАТ дисертація на здобуття наукового ступеня кан
12. великих и удельных княжеств возникло объединённое государство во главе с русской народностью включивше
13. Юниджекс биологически активная добавка к пище
14. 1 Назовите основоположника объективного идеализма в Европейской философии- А Гераклит В Демокрит С
15. тема ГОСТ Р порядок их подготовки и аттестации.html
16. Тема- Смутное время
17. сайта контактное лицо электронная почта номер ICQ Skype
18. Управление функция любых организованных систем обеспечивающая сохранение их определенной структу
19. Лекция 11 Информационная культура и ее аспекты
20. методических комплексах дисциплин образовательных программ высшего профессионального образования