
- •Институт радиоэлектроники и телекоммуникаций Кафедра радиотехнических систем конспект лекций по дисциплине
- •1.2. Идентификация файлов
- •2.1. Система меню, основные сведения о меню
- •2.2. Системное меню -
- •2.3. Меню File (Файл)
- •2.3.1. Команда New (Новый)
- •2.4. Меню Edit (Редактирование)
- •2.4.7. Команда Copy example (Скопировать пример)
- •2.4.8. Команда Show clipboard (Показать содержимое текстового буфера)
- •2.5. Меню Search (Поиск)
- •2.5.1. Команда Find... (Найти)
- •2.5.2. Команда Replace... (Заменить)
- •2.5.4. Команда Go to line number... (Перейти к строке с номером)
- •2.5.7. Команда Locate function... (Местоположение функции)
- •2.6. Меню Run
- •2.6.6. Команда Arguments... (Аргументы)
- •2.7. Меню Compile (Компиляция)
- •2.8. Меню Debug (Отладка)
- •2.8.4. Команда Watches (Просмотр выражений)
- •2.8.4.2. Команда Delete watch (Удалить выражение просмотра)
- •2.8.4.3. Команда Edit watch... (Редактировать выражение просмотра)
- •2.8.4.4. Команда Remove all watch (Удалить все выражения просмотра)
- •2.8.6. Команда Breakpoints... (Точки останова)
- •2.9. Меню Project (Проект)
- •2.10. Меню Options (Управление системой)
- •2.11. Меню Window (Окно)
- •2.11.3. Команда Cascade (Каскадное расположение)
- •2.11.4. Команда Title (Мозаичное расположение)
- •2.11.7. Команда Close all (Закрыть все)
- •2.11.8. Команда Message (Сообщение)
- •2.11.9. Команда Output (Выводимые данные)
- •2.11.10. Команда Watch (Выражение просмотра)
- •2.11.12. Команда Register (Регистры)
- •2.11.13. Команда Project (Проект)
- •2.11.14. Команда Project notes (Примечания)
- •2.12. Меню Help (Помощь)
- •2.12.1. Команда Contents (Содержание)
- •2.12.5. Команда Help on help (Информация по системе подсказки)
- •2.12.6. Команда Active file... (Активный файл)
- •2.12.7. Команда About... (о...)
- •3.2. Команды редактора
- •4. Компиляция программ
- •4.1. Установка параметров среды и режимов работы компилятора
- •4.2. Виды компиляции программ
- •4.3. Отладка программ на этапе компиляции Просмотр сообщений на этапе компиляции
- •Success : Press any key
- •Корректировка синтаксических ошибок
- •5. Компоновка программ
- •5.1. Команды компоновки программ
- •5.2. Отладка программ на этапе компоновки
- •Errors : Press any key
- •6. Отладка программ на этапе выполнения программы
- •6.1. Основные понятия
- •6.2. Подготовка системы к отладке программы
- •6.3. Установка, удаление и просмотр текущих значений Установка и удаление переменных и выражений из окна просмотра
- •Просмотр текущих значений
- •6.4. Трассировка программы
- •6.5. Работа с функциями
- •7. Сообщения об ошибках
- •Переменные, используемые в сообщениях об ошибках
- •7.1. Сообщения об ошибках на этапе компиляции программы Сообщения об ошибках компиляции
- •Критические (фатальные) ошибки (Fatal error)
- •7.2. Сообщения об ошибках на этапе компоновки
- •Критические (фатальные) ошибки компоновки
- •7.3. Сообщения об ошибках на этапе выполнения программы Ошибки этапа выполнения программы
- •Floating point error: Divide by zero
- •Оглавление
4.2. Виды компиляции программ
Система Borland C++ имеет 3 различные команды компиляции: Compile, Make и Build all. Они отличаются отношением компилятора к объектным модулям, входящим в состав программы.
Команда Compile to OBJ (A11+F9) компилирует программу: из файла типа .срр или .с формируется объектный модуль, файл типа .obj. Для компиляции берется файл, загруженный в редактор. Расширение файлов для компиляции устанавливается на странице Options\Compiler\C++ Options; в ней надо установить в блоке Use C++ Compiler значение On для опции C++ always.
Команда Маке (Создать ехе-файл) формирует выполняемую программу, файл типа .ехе. Для этого она вызывает компиляцию, затем компоновку программы с помощью редактора связей (Linker). Если в процессе компиляции встретилось обращение к другим функциям, среда проверяет, были ли сделаны в файле с исходным текстом этой функции какие-либо изменения с момента его последней компиляции; если изменения были, производится компиляция этой функции и формирование его obj-файла. Однако, если срр-файл функции не найден система использует существующий obj-файл без контроля его изменений.
Команда Build all (Создать) подобна опции Маке. За следующим исключением: с ее помощью производится поиск и перекомпиляция всех исходных файлов входящих в программу независимо от того, были ли в них изменения.
При отладке однофайловых программ целесообразно использовать команду Compile (Alt+F9). Но можно использовать и Make (F9). Команду Build all надо использовать только при разработке многофайловых программ.
Прерывание процесса компиляции программы может быть при обнаружении заданного предела количества ошибок или предупреждений на этапе компиляции или программистом с помощью команды Ctrl+Break. Количество обнаруженных ошибок и предупреждений, при которых происходит прерывание компиляции, устанавливается в диалоговом окне Options/Compiler/Messages/Display/Compiler Messages.
4.3. Отладка программ на этапе компиляции Просмотр сообщений на этапе компиляции
Отладка программ включает поиск и исправление ошибок программы. Borland C++ позволяет одновременно просматривать сообщения об ошибках и редактировать текст программы, т. е. исправлять ошибки. Это облегчает процесс поиска и устранения ошибок. Ошибки в программе могут быть:
синтаксические (формальные), которые обнаруживает компилятор;
компоновки, связанные с взаимосвязью программы и подпрограмм;
выполнения: логические, семантические, ввода-вывода.
На этапе компиляции могут быть обнаружены ошибки при написании операторов языка, например:
лишние символы в ключевых словах и именах переменных;
пропущенные символы;
попытка использовать необъявленные переменные;
отсутствие прототипа функции;
несоответствие типов в списках формальных и фактических параметров.
В процессе компиляции на экране появляется дополнительное окно, в котором представлено наименование компилируемой программы и информация о файлах, обрабатываемых компилятором, а в разрыве верхней рамки дополнительного окна - наименование процесса обработки: Compiling.
Во время компиляции в окне сообщений (Message) могут накапливаться сообщения. Они могут быть трех типов: информационные, предупреждения и об ошибках. В состав информационного сообщения входит имя процесса обработки программы и имя компилируемого файла.
По завершении компиляции в нижней строке дополнительного окна Compiling появляется сообщение об успешности компиляции: