The website "dmilvdv.narod.ru." is not registered with uCoz.
If you are absolutely sure your website must be here,
please contact our Support Team.
If you were searching for something on the Internet and ended up here, try again:

About uCoz web-service

Community

Legal information

A.1 Имена и область видимости

A.1 Имена и область видимости

Предыдущая  Содержание  Следующая V*D*V

ANSI-C определяет, что у имён может быть почти произвольная длина. Имена, начинающиеся с подчёркивания, зарезервированы для библиотек, то есть они не должны использоваться в прикладных программах.

Глобально определяемые имена могут быть скрыты в единице трансляции, то есть в исходном файле, при помощи static:

 

static int f (int x) { ... }     видима только в исходном файле

int g;                           видима всей программе

 

Имена массивов представляют собой постоянные адреса, которые могут использоваться для инициализации указателей даже если массив ссылается сам на себя:

 

struct table { struct table * tp; }

v[] = { v, v+1, v+2 };

 

Не совсем ясно, как можно было бы закодировать опережающую ссылку на объект, который должен всё же быть скрыт в исходном файле. Следующие операции выглядят корректно:

 

extern struct x object;          опережающая ссылка

f() { object = value; }          использование такой ссылки

static struct x object;          скрытое определение

 

Предыдущая  Содержание  Следующая