ВУЗ:
Составители:
Рубрика:
45
для переменных i, j отводится память, с этими именами сопоставляются
участки памяти по 2 байта, которые можно использовать для хранения
значений переменных. С именем size_t сопоставлено имя кон-
кретного типа (unsigned int), синонимом которого является теперь
size_t; с именем add сопоставлен код функции. Все такие объявления
называют определениями. Однако не все объявления являются опреде-
лениями. Из всех вышеприведённых объявлений два не являются опре-
делениями:
extern int m;
void func (char *, int);
В первом из этих объявлений сообщается только, что переменная
m имеет тип int, память же для неё должна выделяться где-то в другом
месте, о чём говорит ключевое слово extern.
Второе объявление говорит, что func есть имя функции с двумя
аргументами, первый из которых – указатель на char, а второй – int, а
сама функция не возвращает никакого значения. Такое объявление на-
зывают прототипом функции. Сама же функция func должна быть оп-
ределена вместе со своим телом где-то в другом месте.
В программе для каждого имени должно присутствовать одно и
только одно определение, в то время как объявлений, не являющихся
определениями, может быть как угодно много.
9. Область существования имени
После объявления имя можно использовать. Однако оно, как пра-
вило, может быть использовано только в некоторой части программы,
которая называется областью существования имени.
Текст программы можно разместить в одном файле, а можно и в
нескольких различных файлах, каждый из которых содержит целиком
одну или несколько функций. Для объединения в одну программу эти
файлы компилируются совместно. Информация обо всех этих файлах
помещается в так называемый файл проекта (с расширением ".prj").
Компилятор для каждого исходного файла создаёт объектный код (файл
с расширением ".obj"). Затем все объектные файлы (вместе с библио-
течными) объединяются компоновщиком в исполняемый, или загрузоч-
ный модуль, который имеет имя файла проекта и расширение ".ехе".
Область существования имени нужна компилятору для того, чтобы сге-
нерировать верный машинный код.
Страницы
- « первая
- ‹ предыдущая
- …
- 41
- 42
- 43
- 44
- 45
- …
- следующая ›
- последняя »