
книги / Программирование на языке Си
..pdfГлава 9. Подготовка и выполнение программ |
463 |
||||
%mak.e |
-с |
new_node |
|
|
|
сс |
-о |
new_node.o |
|
||
ar |
-rv |
' libtree.a |
|
||
г - new_node.о |
|
|
|||
ranlib |
libtree.a |
-ltree |
|
||
cc |
-о |
tree |
tree.c |
|
Строка, следующая за командой вызова архиватора аг (г - new_node.o), - это сообщение архиватора о замене объектного модуля newnode.o в библиотеке libtree.a.
9.2. С борка и вы полнение програм м в
интегрированной среде T urbo С 2.0
9.2.1. Состав системы программирования Turbo С 2.0
В современных операционных системах в состав систем про граммирования обычно входит интегрированная среда. Такая среда содержит все необходимые средства разработки про грамм. Не выхрдя из среды, можно создавать, редактировать, компилировать, выполнять, отлаживать программы на том язы ке программирования, для которого эта среда построена.
Интегрированная среда Turbo С 2.0 является удобным сред ством для разработки программ на языке Си. Эта среда, как и другие интегрированные среды, функционирующие в операци онной системе MS-DOS, предназначена для работы в текстовом режиме дисплея. Работа среды базируется на технике меню и окон, причем для каждого выделенного пункта меню можно по лучить контекстно-зависимую подсказку.
В системе программирования Turbo С 2.0 компоненты обыч но размещаются в следующих каталогах:
•LIB - содержит стандартную библиотеку объектных моду лей языка Си, библиотеки объектных модулей математиче ских функций, функций графики и др.;
•INCLUDE - заголовочные файлы системы программирова ния Си;
464 |
Программирование на языке Си |
•EXAMPLES - содержит исходные тексты функций (под каталог SOURCE), в основном математических, и про граммы (подкаталог TEST) для тестирования функций из подкаталога SOURCE;
•ОСНОВНОЙ КАТАЛОГ (в который была установлена сис тема программирования Turbo С) - содержит следующие программы и файлы:
ТС.ЕХЕ - исполняемая программа интегрированной среды;
ТСС.EXE - компилятор Lattice С Compiler для работы из командной строки; СРР.ЕХЕ - препроцессор языка Си;
THELP.COM - резидентный справочник по интегриро ванной системе Turbo С 2.0 и языку Си. Справочник за пускается командой thelp.com для работы в фоновом режиме, т.е. после его запуска на дисплей не выводится никакой информации. Переход к работе со справочни ком производится по нажатию клавиши 5 на цифровой клавиатуре и ведется в отдельном окне. Выход из спра вочника производится по клавише <Esc>.
Для нормального функционирования интегрированной среды Turbo С 2.0 достаточно IBM PC/XT с 640 Кбайт оперативной памяти. Работоспособный вариант среды Turbo С 2.0 занимает на жестком диске менее 1 Мбайта.
Переход в интегрированную среду Turbo С 2.0 осуществля ется по команде tc.exe (или просто tc).
9.2.2. Экран интегрированной среды Turbo С 2.0
При выполнении команды вызова интегрированной среды на экране дисплея появляется окно, показанное на рис. 9.3.
Основными структурными компонентами экрана интегриро ванной среды являются:
1 - строка меню, расположенная в верхней части экрана и содержащая основное меню среды Turbo С 2.0;
2 - окно редактирования (Edit) исходного текста;
466 |
Программирование на языке Си |
женную между строкой меню (1) и строкой под сказки (5);
F6 - осуществляет переключение между окнами "Редактирование" (Edit) и "Сообщения" (Message);
F9 - скомпилировать и построить исполняемую про грамму;
F10 - переход в главное меню; выбранный пункт главного меню выделяется цветовым маркером; перемещение по главному меню осуществляется с помощью кла виш со стрелками.
9.2.3. Система меню среды Turbo С 2.0
Строка меню (1) содержит основную группу команд. Приве дем описание этих команд и команд, содержащихся в меню нижнего уровня. Поясним те из них, которые необходимы для проведения минимальных действий по созданию и отладке про стейших программ. При выборе пункта меню и нажатии на кла вишу <Enter> может появиться в отдельном окне так называе мое "ниспадающее" меню нижнего уровня, каждый пункт кото рого может либо порождать, в свою очередь, меню следующего уровня, либо вызывать определенные действия (трансляция, ис полнение программы и т.д.), либо устанавливать (определять) некоторый параметр среды, например имя ехе-файла, путь к ка талогу с заголовочными файлами и т.п. Для ссылки в нашем описании на пункт главного меню будем использовать название этого пункта. Для ссылки на пункты меню нижних уровней применим следующую схему: укажем последовательно назва ния тех пунктов в системе меню, через которые необходимо пройти, для того чтобы достичь обозначаемый пункт. В качест ве разделителей имен пунктов меню будем использовать символ '|' (вертикальная черта). Например, для ссылки на пункт меню Change directory (сменить рабочий каталог), который входит в подменю File главного меню, будем пользоваться записью File|Change directory. Напомним, что для перехода в главное меню используется функциональная клавиша <F10>.
468 |
Программирование на языке Си |
из этого файла. Иначе используется файл с текстом ос новной программы на Си (Primary С file - см. ниже) или файл, находящийся в окне редактирования;
•собрать (скомпоновать) исполняемый (с расширением 'ехе') файл независимо от того, устарел исполняемый файл или нет (LINK EXE file);
•перекомпилировать все файлы в проекте вне зависимо сти от даты и времени создания (Build all);
•задать имя программы, которая будет скомпилирована в объектный модуль (Primary С file);
•вывести информацию о текущем файле (Get info).
5.Project - определяет имя файла проекта и некоторые ре жимы работы подсистемы Маке» Указанная подсистема (она аналогична по назначению команде make системы UNIX) пред назначена для слежения за тем, чтобы исполняемая программа была построена из исходных модулей последних версий. Под система make позволяет:
•задать файл проекта (Project name), содержащий имена файлов, которые необходимо скомпилировать или по строить. Имя файла проекта переходит к файлу с рас ширением 'ехе' (исполняемому файлу). В своей прос тейшей форме файл проекта содержит просто список имен исходных модулей компонентов программы;
•установить условия прерывания процесса построения подсистемой Маке исполняемой программы из объект ных модулей (Break make on errors). Поясним возмож ности этого пункта. При компиляции и компоновке Программы могут появиться:
О„"Предупреждения" (Warnings) - компилятор выдал предупреждения;
О"Ошибки" (Errors) - компилятор обнаружил ошиб ки и выдал сообщения о них;
О"Фатальные ошибки" (Fatal errors) - выявлены ошибки, влияющие на все компоненты исполняемой программы.
Глава 9. Подготовка и выполнение программ |
469 |
В качестве условия прерывания построения программы можно указывать предельные количества предупрежде ний, ошибок и фатальных ошибок;
•установить режим автоматическогоя слежения за тем, чтобы исполняемая программа была построена из ис ходных модулей последних версий (Auto dependencies On). Если режим установлен (On), то подсистема Маке открывает объектный, модуль и читает информацию в заголовке модуля. Затем проверяются дата и время соз дания исходных модулей, из которых создаются объ ектные модули. Если эта информация различается, то исходные модули компилируются и исполняемая про грамма перестраивается. Если режим не установлен (Off), то такая проверка не производится;
•очистить имя проекта и закрыть окно сообщений (Clear Project);
•стереть сообщения об ошибках в окне сообщений "Message" (Remove message).
6.Options - команды, устанавливающие: режимы работы для компилятора и компоновщика; параметры среды; каталоги; ар гументы исполняемой программы:
• установить параметры: аппаратной конфигурации, режимы отладки, режим оптимизации кода, управления выдачей сообщений (Compiler);
• установить режимы работы компоновщика (Linker) - ука зать возможность подстановки перед стандартными биб лиотеками собственных библиотек объектных модулей, включить (выключить) режим уведомления о дублирую щихся внешних именах в объектных модулях;
• установить параметры среды (Environment) - параметры просмотра сообщений об ошибках, режим сохранения па раметров среды, режим создания резервных копий редак тируемых файлов. Основные параметры, устанавливаемые
вэтом пункте меню:
Оустановить (выключить) режим просмотра окна сооб щений, когда подсвечиваются строки в исходном фай-
470 |
Программирование на языке Си |
ле, на которые ссылается сообщение (Message tracking);
0включить (выключить) режим автоматического сохра нения параметров конфигурации среды (Config
autosave);
Овключить (выключить) режим создания резервных ко пий редактируемых файлов (Backup source files);
•определить полные пути к каталогам системы программи рования (Directories), которые содержат: заголовочные файлы, библиотеки, рабочий каталог, каталог, где хранятся компоненты системы программирования Си. Подробно ус тановка путей к этим каталогам описывается ниже;
•задать параметры командной строки (Arguments). В окне, появившемся при выборе этого пункта меню, указываются параметры, которые передаются исполняемой программе при ее выполнении из среды Turbo С, - аргументы функ ции main();
•сохранить параметры среды (Save options) в файле на дис ке. При установке параметров можно изменять имя файла,
вкотором они сохраняются. При последующей загрузке среды значения ее параметров выбираются именно из это го файла;
•выбрать и загрузить один из нескольких файлов парамет ров среды, созданных по команде Options|Save options.
7.Debug - команды, позволяющие установить ряд парамет ров, используемых при отладке программы.
8.Break/Watch - команды, позволяющие вставить, удалить контрольные точки в программе и сформировать выражения, используемые для наблюдения за переменными программы во время ее работы.
9.2.4. Настройка среды Turbo С
Прежде чем начинать работу по вводу текстов функций про граммной системы, их отладке и сборке, необходимо настроить параметры среды Turbo С 2.0:
Глава 9. Подготовка и выполнение программ |
471 |
•создать и указать в среде рабочий каталог, в котором будут находиться компоненты разрабатываемых программ и го товые к выполнению программы;
•задать полные имена каталогов (пути), содержащих заго ловочные файлы и библиотеки системы программирования Си;
•настроить параметры управления проектом.
Создание рабочего каталога. Предположим, что' система программирования Turbo С 2.0 была установлена на диске D: в каталоге ТС20. В этом же каталоге создадим средствами MSDOS рабочий каталог и назовем его WORK.
Теперь простейший вход в интегрированную среду Turbo С 2.0. - это выполнение команды (в MS-DOS):
> t c . e x e
После этой команды начнется диалог с интегрированной средой и перед вами появится экран, изображенный на рис. 9.3.
Установка в среде Turbo С 2.0 полных имен каталогов. Перед началом работы необходимо задать полные имена вспо могательных и рабочего каталогов. Для этого необходимо пе рейти в меню Options|Directories (рис. 9.4) и, выбирая после довательно следующие пункты меню
•Include directories
•Library directories
•Output directory
•Turbo C directory
ввести соответственно следующие имена каталогов:
D:\TC20\INCLUDE
D :\T C 2 0 \L IB
D:\TC20\WORK
D :\T C 20
Здесь Include и Lib - это стандартные для интегрированной среды (для компилятора) имена каталогов, в которых соответст венно размещены включаемые (заголовочные) текстовые файлы и библиотечные модули:
472 |
|
|
|
|
Программирование на языке Си |
|
File |
Edit |
Run |
1 |
Compile |
Project |
Options Debug Break/watch |
___Line |
1 |
Col |
Insert |
Indent Tab |
ONfinE.С |
Compiler
Linker
Environment
|гЩ 9Я Я !П 9В Н Н
Include directories: . D:\TC20\INCLUDE
Library directories: D:\TC20SLIB
Output directory:_____D:\TC20\WORK___
Turbo C directory: D:\TC20
Pick file name:
Current pick file :
Рис. 9.4. Окно установки имен каталогов
При выборе каждого из указанных пунктов меню на экране появляется вспомогательное окно с заголовком, совпадающим с пунктом меню (например, Include directories), в котором необ ходимо набрать полное имя соответствующего каталога. Набор имени завершается нажатием на клавишу <Enter>. После этого имя каталога отображается в строке пункта меню (например, как на рис. 9.4 "Include directories: D:\TC20\INCLUDE"). В итоге после ввода всех имен меню Options|Directories будет выгля деть так, как показано на рис. 9.4.
"Каталог для результатов" (Output directory) определяет то место, где запоминаются объектные модули (файлы с расшире нием "obj") и исполняемые модули. В нашем примере это рабо чий каталог WORK в каталоге ТС20. Подсистема управления проектом именно здесь ищет объектные модули во время по строения исполняемой программы.
Настройка параметров управления проектом. В совре менных интегрированных средах в той или иной степени реали зованы идеи, на основе которых работает команда make в системе UNIX. Используя информацию (о дате и времени соз дания), хранящуюся в объектных и исполняемых модулях, под системы управления проектами интегрированных сред позво ляют перекомпилировать и перестроить устаревшие объекты.
Подсистема управления проектом в интегрированной систе ме Turbo С 2.0 может действовать на основе простейшей ин