1.6 Структура программы
1.6 Структура программы
Программа на С++ обычно состоит из большого числа исходных файлов, каждый из которых содержит описания типов, функций, переменных и констант. Чтобы имя можно было использовать в разных исходных файлах для ссылки на один и тот же объект, оно должно быть описано как внешнее. Например:
extern double sqrt(double); extern instream cin;
Самый обычный способ обеспечить согласованность исходных файлов – это поместить такие описания в отдельные файлы, называемые заголовочными (или хедер) файлами, а затем включить, то есть скопировать, эти заголовочные файлы во все файлы, где нужны эти описания. Например, если описание sqrt хранится в заголовочном файле для стандартных математических функций math.h, и вы хотите извлечь квадратный корень из 4, можно написать:
#include «math.h» //... x = sqrt(4);
Поскольку обычные заголовочные файлы включаются во многие исходные файлы, они не содержат описаний, которые не должны повторяться. Например, тела функций даются только для inline-подставляемых функций (#1.12) и инициализаторы даются только для констант (#1.3.1). За исключением этих случаев, заголовочный файл является хранилищем информации о типах. Он обеспечивает интерфейс между отдельно компилируемыми частями программы.
В команде включения include имя файла, заключенное в угловые скобки, например «math.h», относится к файлу с этим именем в стандартном каталоге (часто это /usr/include/CC), на файлы, находящиеся в каких-либо других местах ссылаются с помощью имен, заключенных в двойные кавычки. Например:
#include «math1.h» #include «/usr/bs/math2.h»
включит math1.h из текущего пользовательского каталога, а math2.h из каталога /usr/bs.
Здесь приводится очень маленький законченный пример программы, в котором строка определяется в одном файле, а ее печать производится в другом. Файл header.h определяет необходимые типы:
// header.h
extern char* prog_name; extern void f();
В файле main.c находится главная программа:
// main.c
#include «header.h» char* prog_name = «дурацкий, но полный»; main() (* f(); *)
а файл f.c печатает строку:
// f.c
#include «stream.h» #include «header.h» void f() (* cout «„ prog_name «« « “; *)
Скомпилировать и запустить программу вы можете например так:
$ CC main.c f.c -o silly $ silly дурацкий, но полный $
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
(8.7) Под W2k не хотят работать некоторые программы, требующие интенсивного обращения к CD приводу, такие как Audiograbber, CDEx, программы для записи CD-RW, некоторые DVD декодеры, и т. д..
(8.7) Под W2k не хотят работать некоторые программы, требующие интенсивного обращения к CD приводу, такие как Audiograbber, CDEx, программы для записи CD-RW, некоторые DVD декодеры, и т. д.. Многие программы, требующие непрерывного потока данных идущих на или с CD/DVD привод, нуждаются в
7.4. Под XP не хотят работать некоторые программы, требующие интенсивного обращения к CD приводу, такие как Audiograbber, CDEx, программы для записи CD-RW, некоторые DVD декодеры, и т. д..
7.4. Под XP не хотят работать некоторые программы, требующие интенсивного обращения к CD приводу, такие как Audiograbber, CDEx, программы для записи CD-RW, некоторые DVD декодеры, и т. д.. Многие программы, требующие непрерывного потока данных идущих на или с CD/DVD привод, нуждаются в
1. Структура программы на языке Pascal
1. Структура программы на языке Pascal В программе на Pascal выделяют следующие основные разделы: заголовок программы, описания, операторы. Разделы отделяются друг от друга точкой с запятой. В конце программы ставится точка. Каждый раздел начинается со своего ключевого
1. Структура программы на языке C
1. Структура программы на языке C Программа может состоять из одной или нескольких, связанных между собой, функций, главная из которых называется main – именно с нее начинается выполнение программы. Поэтому, наличие функции с таким именем в любой программе
1. Структура программы на ассемблере
1. Структура программы на ассемблере Программа на ассемблере представляет собой совокупность блоков памяти, называемых сегментами памяти. Программа может состоять из одного или нескольких таких блоков-сегментов. Каждый сегмент содержит совокупность предложений языка,
Структура простой программы на C#
Структура простой программы на C# Язык C# требует, чтобы вся логика программы содержалась в рамках определения некоторого типа (вспомните из главы 1, что термин тип используется для обозначения любого элемента множества {класс, интерфейс, структура, перечень, делегат}). В
СТРУКТУРА ПРОСТОЙ ПРОГРАММЫ
СТРУКТУРА ПРОСТОЙ ПРОГРАММЫ Теперь, после того как мы привели конкретный пример, вы готовы к тому, чтобы познакомиться с несколькими общими правилами, касающимися программ, написанных на языке Си. Программа состоит из одной или более функций, причем какая-то из них
СТРУКТУРА ПРОГРАММЫ
СТРУКТУРА ПРОГРАММЫ Исходная программа Исходная программа представляет собой совокупность следующих элементов: директив препроцессора, указаний компилятору, объявлений и определений. Директивы препроцессора специфицируют действия препроцессора по преобразованию
Структура программы Super Home Suite
Структура программы Super Home Suite Рассмотрим главное окно программы Super Home Suite (демонстрационной версии 3.5.2) (рис. 2.1). Рис. 2.1. Главное окно программы Super Home SuiteВверху расположено системное меню, включающее разделы команд для управления программой, редактированием данных,
1.6 Структура программы
1.6 Структура программы Программа на С++ обычно состоит из большого числа исходных файлов, каждый из которых содержит описания типов, функций, переменных и констант. Чтобы имя можно было использовать в разных исходных файлах для ссылки на один и тот же объект, оно должно
Структура программы
Структура программы Структура программы: обзор Программа содержит ключевые слова, идентификаторы, комментарии. Ключевые слова используются для выделения синтаксических конструкций и подсвечиваются жирным шрифтом в редакторе. Идентификаторы являются именами
Структура программы: обзор
Структура программы: обзор Программа содержит ключевые слова, идентификаторы, комментарии. Ключевые слова используются для выделения синтаксических конструкций и подсвечиваются жирным шрифтом в редакторе. Идентификаторы являются именами объектов программы и не могут
3.2.4. Удаление программы из меню Все программы
3.2.4. Удаление программы из меню Все программы Иногда нужно удалить ярлык программы из меню Все программы. Заметьте, удаление ярлыка не приводит к удалению программы, программа все еще останется на жестком диске и ее можно запустить, если вы знаете, как называется ее
Структура и процесс загрузки COM-программы
Структура и процесс загрузки COM-программы Что же представляет собой COM-программа, как она загружается в память и запускается?Структура COM-программы предельно проста – она содержит только код и данные программы, не имея даже заголовка. Размер COM-программы ограничен
Структура и процесс загрузки EXE-программы
Структура и процесс загрузки EXE-программы В отличие от COM-программ, EXE-программы могут состоять из нескольких сегментов (кодов, данных, стека). Они могут занимать больше 64Кбайт.EXE-файл имеет заголовок, который используется при его загрузке. Заголовок состоит из
47. Структура программы на ассемблере
47. Структура программы на ассемблере Программа на ассемблере представляет собой совокупность блоков памяти, называемых сегментами памяти. Программа может состоять из одного или нескольких таких блоков-сегментов. Каждый сегмент содержит совокупность предложений