Страница 36 из 69
строк программы, загруженной в редактор.
int findit(void) /* Строка 1 */
{
return(2);
- 293,294 -
}
void main(void) /* Строка 6 */
{
int i,j;
i = findit(); /* Строка 10 */
printf("%d\n",i); /* Строка 11 */
j = 0; ... /* Строка 12 */
}
findit является функцией, определенной пользователем в моду-
ле, который был откомпилирован с отладочной информацией. Предпо-
ложим, что в текущий момент выполняемой позицией является строка
10 вашей программы.
- Если вы выберете Run/Trace Into, выполняемая позиция пере-
местится в первую строку функции findit (строка 1 вашей програм-
мы), позволяя вам проверить и ее.
- Если вы выберете Run/Step Over, функция findit будет вы-
полнена, и i будет присвоено значение 2. Выполняемая позиция пе-
реместится на строку 11.
Если бы, однако, выполняемая позиция размещалась на строке
11 вашей программы, то разницы между выбором той или иной из этих
двух функций не было - обе они выполнили бы функцию printf и пе-
реместили позицию выполнения на строку 12. Это обусловлено тем,
что функция printf не содержит отладочной информации.
"Горячая" клавиша для команды Run/Step Over - F8.
- 295,296 -
Compile (меню компиляции)
-----------------------------------------------------------------
Режимы, перечисленные в этом меню, позволяют компилировать
программу в объектный (.OBJ) файл, создавать выполняемый (.EXE)
файл, производить компоновку, перестраивать все файлы, входящие в
проект, указывать первичный Си-файл, а также получать информацию
о последней компиляции или выполнении.
Compile to OBJ (компилировать в объектный файл)
-----------------------------------------------
Эта команда компилирует .C-файл в .OBJ-файл. Имя файла, ко-
торый будет получен в результате компиляции (например,
С:EXAMPLE.OBJ), постоянно отображается в ходе процесса компиля-
ции. Это имя образуется на основе одного из двух имен по следую-
щему простому алгоритму:
- в качестве имени файла принимается имя первичного исходно-
го файла; если оно не указано, то:
- принимается имя последнего файла, загруженного в окно
редактора.
Во время процесса компиляции на экране отображается окно, в
котором представляются результаты компиляции. По окончании про-
цесса компиляции нажмите любую клавишу для удаления этого окна.
Если были обнаружены ошибки, то вы окажетесь в окне сообщений на
первой ошибке (она отображается с повышенной яркостью). Эта ко-
манда и ее опции более подробно рассматриваются в главе 3.
"Горячая" клавиша для команды Compile to OBJ - Alt-F9.
Make EXE File (создать выполняемый файл)
----------------------------------------
Эта команда вызывает Project-Make для создания .EXE-файла. В
ходе процесса создания выполняемого файла постоянно отображается
имя файла, который получится в результате выполнения команды,
например, C:EXAMPLE.EXE. Имя .EXE-файла выбирается в соответствии
со следующим простым алгоритмом:
- 297,298 -
- имя файла-проекта (с расширением .PRJ), указанное в меню
Project/Project Name, или, если это имя не указано, то
принимается:
- имя первичного Си-файла или, если оно не указано, то при-
нимается:
- имя последнего файла, загруженного в окно редактора.
"Горячая" клавиша для этой команды - F9.
Link EXE (компоновать в .EXE-файл)
----------------------------------
Компонует текущие .OBJ и .LIB-файлы (как используемые по
умолчанию, так и заданные в текущем project-файле) без выполнения
make. В результате получается новый выполняемый файл с расширени-
ем .EXE.
Build All (перестроить)
-----------------------
Перестраивает все файлы вашего проекта, независимо от даты
создания. Эта команда похожа на команду Compile/Мake ЕХЕ File, за
исключением того, что в данном случае перекомпиляция делается для
всех файлов, независимо от их актуальности, тогда как Мake EXE
File перекомпилирует только те файлы, которые являются неактуаль-
ными. Build All сначала устанавливает даты создания всех файлов в
нуль, а затем выполняет make. (Таким образом, если вы прервете
выполнение команды Build All с помощью Ctrl-Break, то для возоб-
новления тех же действий вы можете задать уже и Make EXE File.)
Primary C File (первичный .C-файл)
----------------------------------
Эта команда полезна (но не обязательна), когда вы компилиру-
ете единичный .C-файл, включающий несколько файлов-заголовков
(.H-файлов). Если при компиляции обнаружена ошибка, то файл, со-
держащий ошибку (а это может быть файл как с расширением .С, так
- 299,300 -
и с расширением .Н), автоматически загружается в редактор, чтобы
вы могли исправить ошибку. (Следует отметить, что .Н-файл будет
автоматически загружен в редактор только в том случае, если для
опции /Options/Environment/Message Tracking вместо значения по
умолчанию поставлено значение "All Files" (все файлы). В против-
ном случае файл с расширением .Н в редактор автоматически не заг-
ружается.) После исправления ошибки первичный исходный файл пере-
компилируется после нажатия комбинации клавиш Alt-F9, даже если
он не загружен в редактор.
Get Info (получить информацию)
------------------------------
Команда Compile/Get Info обеспечивает выдачу на экран инфор-
мацию, содержащую:
- первичный файл;
- имя объектного файла, соответствующего текущему файлу;
- имя текущего исходного файла;
- размер текущего исходного файла (в байтах);
- код завершения программы;
- доступную память.
- 301,302 -