Учебный курс по отладке проектов на языках C и C++

В следующем кратком учебном курсе рассматриваются некоторые аспекты отладки проектов на языках C или C++ в NetBeans IDE NetBeans 7.2.

Содержание

Содержимое на этой странице применимо к IDE NetBeans 7.2
Требования
Создание примера проекта
Создание точек останова
Запуск сеанса отладки
Проверка состояния приложения

Требования

Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.

Программное обеспечение или материал Требуемая версия
IDE NetBeans версия 7.2 с подключаемым модулем NetBeans C/C++
Комплект для разработчика на языке Java (JDK) версия 7

Сведения о загрузке и установке необходимого ПО доступны в разделах Инструкции по установке среды IDE NetBeans 7.2 и Настройка среды IDE NetBeans для C, C++ или Fortran.

Создание примера проекта

В IDE NetBeans с C/C++ используется отладчик gdb и обеспечиваются различные функции для отладки проектов пользователей. Для наглядного рассмотрения этих функций в этом учебном курсе используется проект Quote. Если проект еще не создан, выполните следующие действия:

  1. Выберите команду "Файл" > "Новый проект".
  2. В мастер проекта разверните категорию "Образцы" и подкатегорию "C/C++".
  3. Выберите подкатегорию "Приложения", затем выберите проект Quote. Нажмите кнопку "Далее", а затем нажмите кнопку "Готово".

Создание точек останова

Можно создавать точки останова и управлять ими в коде в любое время без запуска сеанса отладки.

Создание и удаление точек останова на строке

  1. В проекте Quote_1 откройте файл quote.cc.
  2. Установите точку останова на строке, щелкнув левое поле окна редактора исходного кода рядом со строкой 161 (response = readChar("Enter disk module type: (S for single disks, R for RAID; Q - exit)", 'S');). Строка будет выделена красным цветом, что обозначает установку точки останова.
    Снимок окна 'Точка останова'
  3. Чтобы удалить точку останова, щелкните значок в левом поле.
  4. Выберите "Окно" > "Отладка" > "Точки останова", чтобы открыть окно точек останова. Точка останова на строке будет перечислена в окне.
    Снимок окна 'Точка останова'

Создание точки останова на функции

  1. Выберите "Отладка" > "Создать точку останова" (CTRL+SHIFT+f8), чтобы открыть диалоговое окно "Создать точку останова".
  2. В раскрывающемся списке "Тип точки останова" установите тип "Функция".
  3. Введите имя функции Customer::GetDiscount в текстовом поле "Имя функции". Нажмите кнопку "ОК".
    Моментальный снимок диалогового окна 'Создать точку останова'
  4. Точка останова на функции установлена и добавлена в список в окне "Точки останова".
    Снимок окна 'Точка останова'

Запуск сеанса отладки

При запуске сеанса отладки в среде IDE запускается отладчик gdb, а затем выполняется приложение внутри отладчика. Среда IDE автоматически открывает окна отладчика и выводит результаты отладки в окне вывода.

  1. Начните сеанс отладки для проекта Quote_1, щелкнув правой кнопкой мыши узел проекта и выбрав 'Отладка'. Запускается отладчик и приложение выполняется.
  2. Откройте окно "Сеансы": для этого выберите "Окно" > "Отладка" > "Сеансы". Сеанс отладки показан в этом окне.

Проверка состояния приложения

  1. В приложении Quote_1 отображается запрос на ввод данных в окне вывода.
  2. Введите имя клиента после запроса "Enter customer name:" (Введите имя клиента).
  3. Приложение остановится в заданной ранее точке останова на функции. В окне 'Точки останова' отобразятся две точки останова, установленные ранее. Зеленая стрелка счетчика программы отображается поверх значка точки останова функции.
    Снимок вкладки 'Точка останова'
  4. Откройте окно "Стек вызовов": для этого выберите "Окно" > "Отладка" > "Стек вызовов". В стеке вызовов отображаются три окна.
    Снимок вкладки 'Стек вызовов'
  5. Откройте окно "Переменные", в которой отображается одна переменная. Нажмите верхнюю кнопку в левом столбце во вкладке "Переменные", чтобы отобразить автоматически введенные значения вместо локальных переменных.
  6. Щелкните значок 'Развернуть', чтобы развернуть структуру.
    Снимок вкладки 'Переменные'
  7. Нажмите кнопку "Продолжить" на панели инструментов. Будет выполнена функция GetDiscount, и в окне "Внешний ввод-вывод" отобразится скидка клиента. После этого отобразится запрос на ввод данных.
  8. Введите данные после отображения запроса. Программа остановится в следующей точке останова – в заданной ранее точке останова на строке. В файле quote.cc вверху значка точки останова отобразится зеленая стрелка счетчика команд, обозначающая строку, на которой остановлена программа.

    Снимок окна вывода

  9. Перейдите на вкладку "Переменные", в которой отобразится длинный список переменных.
    Снимок вкладки 'Локальные переменные'
  10. Перейдите на вкладку "Стек вызовов", в которой теперь отобразится одно окно в стеке.
  11. Выберите "Окно" > "Отладка" > "Регистры". Откроется окно "Регистры", отображающее текущее содержимое регистров.
    Снимок окна 'Регистрация'
  12. Выберите "Окно" > "Отладка" > "Дисассемблер". Откроется окно "Дисассемблер", отображающее команды ассемблера для текущего файла исходного кода.
    Снимок окна 'Дисассемблер'
  13. Нажмите кнопку 'Продолжить'; на панели инструментов и продолжите вводить данные в ответ на запросы в окно вывода, пока программа не будет завершена. Когда вы нажимаете Enter, чтобы выйти из программы, сеанс отладки завершается. Чтобы завершить сеанс отладки до завершения выполнения программы, щелкните правой кнопкой мыши сеанс на вкладке 'Сеансы' и выберите 'Готово' или выберите 'Отладка' > 'Завершить сеанс отладчика'.
get support for the NetBeans

Support


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2015, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo