Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

C - Правила области применения

Область действия в любом программировании — это область программы, в которой может существовать определенная переменная, и за пределами этой переменной к ней нельзя получить доступ. Есть три места, где переменные могут быть объявлены на языке программирования C —

Давайте разберемся, что такое локальные и глобальный переменные и формальные параметры.

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

Переменные, объявленные внутри функции или блока, называются локальными переменными. Они могут использоваться только операторами, которые находятся внутри этой функции или блока кода. Локальные переменные не известны функциям вне их собственных. В следующем примере показано, как используются локальные переменные. Здесь все переменные a, b и c являются локальными для функции main().

Живая демонстрация
#include <stdio.h>
 
int main () {

  /* local variable declaration */
  int a, b;
  int c;
 
  /* actual initialization */
  a = 10;
  b = 20;
  c = a + b;
 
  printf ("value of a = %d, b = %d and c = %d\n", a, b, c);
 
  return 0;
}

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

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

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

Живая демонстрация
#include <stdio.h>
 
/* global variable declaration */
int g;
 
int main () {

  /* local variable declaration */
  int a, b;
 
  /* actual initialization */
  a = 10;
  b = 20;
  g = a + b;
 
  printf ("value of a = %d, b = %d and g = %d\n", a, b, g);
 
  return 0;
}

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

Живая демонстрация
#include <stdio.h>
 
/* global variable declaration */
int g = 20;
 
int main () {

  /* local variable declaration */
  int g = 10;
 
  printf ("value of g = %d\n",  g);
 
  return 0;
}

Когда приведенный выше код скомпилирован и выполнен, он дает следующий результат —

value of g = 10

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

Формальные параметры рассматриваются как локальные переменные внутри функции и имеют приоритет над глобальными переменными. Ниже приведен пример —

Живая демонстрация
#include <stdio.h>
 
/* global variable declaration */
int a = 20;
 
int main () {

  /* local variable declaration in main function */
  int a = 10;
  int b = 20;
  int c = 0;

  printf ("value of a in main() = %d\n",  a);
  c = sum( a, b);
  printf ("value of c in main() = %d\n",  c);

  return 0;
}

/* function to add two integers */
int sum(int a, int b) {

   printf ("value of a in sum() = %d\n",  a);
   printf ("value of b in sum() = %d\n",  b);

   return a + b;
}

Когда приведенный выше код скомпилирован и выполнен, он дает следующий результат —

value of a in main() = 10
value of a in sum() = 10
value of b in sum() = 20
value of c in main() = 30

Инициализация локальных и глобальных переменных

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

<тд>0 <тд>0 <тд>0
Тип данных Исходное значение по умолчанию
целое
знак '\0'
плавающий
двойной
указатель НОЛЬ

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


Язык C

  1. Правила последовательной цепи
  2. Правила параллельной схемы
  3. Правила для производных инструментов
  4. Правила для антипроизводных
  5. Переменные C# и (примитивные) типы данных
  6. Область видимости переменной C#
  7. Переменные C++, литералы и константы
  8. C Переменные, константы и литералы
  9. Класс хранения C
  10. Переменные и литералы Java