Турбо С: руководство пользователя. Часть 1

Турбо С: руководство пользователя. Часть 1 - Стр. 12

Печать PDF
Индекс материала
Турбо С: руководство пользователя. Часть 1
Стр. 2
Стр. 3
Стр. 4
Стр. 5
Стр. 6
Стр. 7
Стр. 8
Стр. 9
Стр. 10
Стр. 11
Стр. 12
Стр. 13
Стр. 14
Стр. 15
Стр. 16
Стр. 17
Стр. 18
Стр. 19
Стр. 20
Стр. 21
Стр. 22
Стр. 23
Стр. 24
Стр. 25
Стр. 26
Стр. 27
Стр. 28
Стр. 29
Стр. 30
Стр. 31
Стр. 32
Стр. 33
Стр. 34
Стр. 35
Стр. 36
Стр. 37
Стр. 38
Стр. 39
Стр. 40
Стр. 41
Стр. 42
Стр. 43
Стр. 44
Стр. 45
Стр. 46
Стр. 47
Стр. 48
Стр. 49
Стр. 50
Стр. 51
Стр. 52
Стр. 53
Стр. 54
Стр. 55
Стр. 56
Стр. 57
Стр. 58
Стр. 59
Стр. 60
Стр. 61
Стр. 62
Стр. 63
Стр. 64
Стр. 65
Стр. 66
Стр. 67
Стр. 68
Стр. 69
Все страницы
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                

                         - 93,94 -
                                                                                
               Остановка Make                                                   
     -----------------------------------------------------------------          
                                                                                
          Имеется несколько причин прерывания процесса  make  в  Турбо          
     Си. Очевидно,  Project-Make останавливается после создания выпол-          
     няемого файла.  Однако,  Project-Make будет также останавливаться          
     для вывода сообщений об ошибках некоторого типа.                           
                                                                                
          Например, Project-Make всегда будет останавливаться, если он          
     не сможет найти один из исходных файлов (или  один  из  зависимых          
     файлов - что будет обсуждаться позже), перечисленных в файле про-          
     екте. Кроме  того,  вы сами в состоянии остановить  Project-Make,          
     нажав Ctrl-Break.                                                          
                                                                                
          Make может  также остановиться,  когда компилятор генерирует          
     сообщения. Вы можете выбрать тип сообщений, по которым надо оста-          
     навливаться, установкой в меню Project режима переключателя Break          
     make on.  Этот переключатель имеет значение  по  умолчанию  Break          
     make on...Errors - которое обычно устраивает вас.  Однако, вы мо-          
     жете захотеть прервать make после компиляции файла,  при  наличии          
     предупреждений, ошибок, фатальных ошибок или перед началом компо-          
     новки.                                                                     
                                                                                
                                                                                
                                                                                
          Полезность каждой из этих возможностей фактически  определя-          
     ется способом,  которым вы предпочитаете исправлять ошибки и пре-          
     дупреждения. Если вы предпочитаете исправлять их сразу по обнару-          
     жению, то вам необходимо установить переключатель Break make on в          
     режим Warnings (предупреждения)  или Errors  (ошибки).   Если  вы          
     предпочитаете работать   с полным списком ошибок во всех исходных          
     файлах до их исправления,  то необходимо установить переключатель          
     в режим Fatal errors (фатальные ошибки) или Link (компоновка).             
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                

                         - 95,96 -
                                                                                
               Синтаксические ошибки в нескольких исходных файлах.              
     -----------------------------------------------------------------          
                                                                                
          Для демонстрации ошибок в нескольких файлах установите пере-          
     ключатель Break make on в состояние Fatal errors (фатальные ошиб-          
     ки).  Для этого нажатием Alt-P войдите в меню  Project и выберите          
     Break make on.  Из подменю выберите пункт Fatal errors (фатальные          
     ошибки).                                                                   
                                                                                
          К данному  моменту  вы должны были уже внести синтаксические          
     ошибки в MYMAIN.C и MYFUNCS.C. Нажмите F9 (MAKE) "создание проек-          
     та". Окно    компиляции  покажет компилируемые файлы и количество          
     ошибок и предупреждений в каждом файле и общее для  сеанса  Make.          
     Когда появится   сообщение Press any key (нажмите любую клавишу),          
     нажмите пробел.                                                            
                                                                                
          Ваш курсор должен располагаться на первой ошибке или предуп-          
     реждении в окне сообщений.  И если файл, к которому относится это          
     сообщение, находится в редакторе, яркая подсветка в окне редакто-          
     ра покажет вам место возникновения проблемы у компилятора.  Далее          
     вы можете перемещаться вверх и вниз в окне сообщений для просмот-          
     ра различных сообщений.  Заметим, что для каждого исходного файла          
                                                                                
     имеется сообщение "Compiling" (компиляция),  которое не  является          
     ни ошибкой,  ни предупреждением, а просто разделяет различные со-          
     общения, генерируемые для каждого файла.                                   
                                                                                
          Когда вы подойдете вниз к границе файла,  окно редактора мо-          
     жет перейти   или  не  перейти на следующий файл в зависимости от          
     состояния Messages Track в меню Debug (отладка). По умолчанию от-          
     слеживание сообщений производится только в текущем файле.                  
                                                                                
          Итак, перемещаясь  к  сообщению,  которое относится к файлу,          
     которого нет в окне редактора, подсветка выключается. Если вы вы-          
     бирете одно из этих сообщений (т.е. нажмете Ввод, находясь на со-          
     общении),  то соответствующий файл будет загружен в  редактор,  и          
     вам будет указано курсором место ошибки.  Если вы затем вернетесь          
     в окно сообщений нажатием F6 (Message),  то слежение в этом файле          
     возобновится.                                                              
                                                                                
          Однако,  установив переключатели  Messages Track в режим All          

     files (все файлы), вы можете обрабатывать сообщения через границы          
     файлов. Это означает, что, когда вы перемещаетесь по окну сообще-          
     ний,  Турбо Си автоматически будет загружать соответствующий файл          
     в  редактор  и,  следовательно,  позволит  вам  увидеть,  к  чему          

                         - 97,98 -
                                                                                
                                                                                
     относится каждое сообщение. Попробуйте сделать это сами.                   
                                                                                
          Вы можете также полностью  отключить обработку ошибок, уста-          
     новив переключатель Messages Track в режим off.  В этом случае вы          
     просто выбираете сообщение, с которым хотите работать и нажимаете          
     ввод.  Соответствующий файл загружается в редактор, а курсор ука-          
     зывает на место ошибки.                                                    
                                                                                
          Заметим, что на Alt-F7 и Alt-F8 (предыдущая ошибка и следую-          
     щая ошибка)    не действует изменение режимов переключателя Track          
     messages. Эти  полезные клавиши всегда будут  находить  следующую          
     или предыдущую ошибку и загружать соответствующий файл,  если это          
     необходимо.                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
               Сохранение и очистка сообщений                                   
     -----------------------------------------------------------------          
                                                                                
          Обычно, перед  созданием  проекта,  окно сообщений очищается          
     для новых сообщений.  Иногда, однако, требуется сохранять сообще-          
     ния между созданием проектов.                                              
                                                                                
          Рассмотрим следующий пример:  у вас может быть проект, имею-          
     щий множество исходных файлов,  и переключатель Break make on ус-          
     тановлен на остановку по ошибкам (Errors). В этом случае вы може-          
     те получить  несколько  предупреждающих  сообщений  в  нескольких          
     файлах, но как только в одном из файлов обнаружится ошибка, пост-          
     роение останавливается.  Вы обнаруживаете эту ошибку и хотите оп-          
     ределить, исправит ли ее компилятор. Однако, если вы снова выпол-          
     няете make или компиляцию,  предыдушие предупреждающие  сообщения          
     пропадают. Как  этого избежать?  Все, что вам нужно сделать - это          
     включить переключатель Keep messages в меню Options/Environment.           
                                                                                
          Когда переключатель Keep massages включен, сообщения не очи-          
     щаются при начале построения. Удаляются только сообщения из пере-          
     компилируемых файлов.  Следовательно старые сообщения для данного          
     файла заменяются новыми сообщениями, генерируемые компилятором.            

                         - 99,100 -
                                                                                
                                                                                
                                                                                
          Если  в некотором месте вы  работаете  с  сообщениями, то вы          
     можете очистить  их  по  выбору  Clear messages  on  в меню Debug          
     (отладка).  При  этом  очищаются все текущие  сообщения. Выключая          
     установку Keep messages и запуская снова make, мы получим очистку          
     предыдущих сообщений.                                                      
                                                                                
          Очистка предыдущих сообщений при изменении проекта - это чу-          
     десная идея. Очистка выполняется легко - заданием в проектном ме-          
     ню соответствующей функции.  После выбора Сlear project вы можете          
     опредилить новый проект,  компилировать и выполнять  однофайловые          
     программы посредством   загрузки их в редактор или по определению          
     имени первичного Си файла.                                                 
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
               Более мощные средства построения проекта                         
     -----------------------------------------------------------------          
                                                                                
          В последнем описании построения проекта вы столкнулись с на-          
     иболее типичной ситуацией - использованием простого списка исход-          
     ных файлов Си.  Project-Make предусматривает гораздо больше,  чем          
     показано  в  этом пpостом примере.  Для того,  чтобы увидеть это,          
     нужно понять как работает make.                                            
                                                                                
          Make работает с помощью сравнения  даты  создания  исходного          
     файла с датой создания объектного файла, генерируемого компилято-          
     ром. Это  сравнение дат создания определяет некоторые неявные за-          
     висимости в  простом списке файлов.                                        
                                                                                
          В ранее данном примере с использованием  MYPROG.PRJ  имеются          
     следующие зависимости:                                                     
                                                                                
          MYMAIN.OBJ зависит от MYMAIN.C                                        
          MYFUNCS.OBJ зависит от MYFUNCS.C                                      
          MYPROG.EXE зависит от MYMAIN.OBJ, MYFUNCS.OBJ и MYPROG.PRJ            
                                                                                
          Это означает, что объектный файл MYMAIN.OBJ не соответствует          

                         - 101,102 -