Рубрики

Как переменные ограничены в C — Статический или Динамический?

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

Например, выходные данные для приведенной ниже программы равны 0, т. Е. Значение, возвращаемое функцией f (), не зависит от того, кто его вызывает. f () всегда возвращает значение глобальной переменной x.

# include <stdio.h>

  

int x = 0;

int f()

{

   return x;

}

int g()

{

   int x = 1;

   return f();

}

int main()

{

  printf("%d", g());

  printf("\n");

  getchar();

}

Ссылки:
http://en.wikipedia.org/wiki/Scope_%28programming%29

Рекомендуемые посты:

Как переменные ограничены в C — Статический или Динамический?

0.00 (0%) 0 votes