Область действия — это область программы, и, в общем, есть три места, где переменные могут быть объявлены:
-
Внутри функции или блока, который называется локальными переменными,
-
В определении параметров функции это называется формальными параметрами.
-
Снаружи всех функций, которые называются глобальными переменными.
Внутри функции или блока, который называется локальными переменными,
В определении параметров функции это называется формальными параметрами.
Снаружи всех функций, которые называются глобальными переменными.
Мы узнаем, что такое функция и ее параметр в следующих главах. Здесь давайте объясним, что такое локальные и глобальные переменные.
Локальные переменные
Переменные, которые объявлены внутри функции или блока, являются локальными переменными. Они могут использоваться только операторами, которые находятся внутри этой функции или блока кода. Локальные переменные не известны функциям вне их собственных. Ниже приведен пример использования локальных переменных:
#include <iostream> using namespace std; int main () { // Local variable declaration: int a, b; int c; // actual initialization a = 10; b = 20; c = a + b; cout << c; return 0; }
Глобальные переменные
Глобальные переменные определяются вне всех функций, обычно в верхней части программы. Глобальные переменные будут сохранять свое значение на протяжении всей жизни вашей программы.
Глобальная переменная может быть доступна любой функции. То есть глобальная переменная доступна для использования во всей вашей программе после ее объявления. Ниже приведен пример использования глобальных и локальных переменных:
#include <iostream> using namespace std; // Global variable declaration: int g; int main () { // Local variable declaration: int a, b; // actual initialization a = 10; b = 20; g = a + b; cout << g; return 0; }
Программа может иметь одинаковые имена для локальных и глобальных переменных, но предпочтение будет отдаваться значению локальной переменной внутри функции. Например —
#include <iostream> using namespace std; // Global variable declaration: int g = 20; int main () { // Local variable declaration: int g = 10; cout << g; return 0; }
Когда приведенный выше код компилируется и выполняется, он дает следующий результат —
10
Инициализация локальных и глобальных переменных
Когда определена локальная переменная, она не инициализируется системой, вы должны инициализировать ее самостоятельно. Глобальные переменные автоматически инициализируются системой, когда вы определяете их следующим образом:
Тип данных | Initializer |
---|---|
ИНТ | 0 |
голец | ‘\ 0’ |
поплавок | 0 |
двойной | 0 |
указатель | НОЛЬ |
Хорошей практикой программирования является правильная инициализация переменных, иначе иногда программа выдаст неожиданный результат.