Добавил:
github.com Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Технология программирования / 2_1_otladka_v_konsoli_30_08_19_-_2_Chasa.doc
Скачиваний:
4
Добавлен:
30.09.2023
Размер:
3.56 Mб
Скачать

Изменение опций отладки

Следующие шаги описывают, как менять опции отладчика:

  1. Выберите главное меню Project и в нем пункт Settings. Появится диалоговое окно Project Settings.

  2. Выберите закладку C/C++.

  3. Выберите опцию из выпадающего списка Debug info.

  4. Нажмите OK, чтобы подтвердить выбор опции и закрыть диалог.

Изменение формата генерируемой отладочной информации

Следующие пять шагов показывают детали того, как конфигурировать ком­поновщик для опций Link for Microsoft Format (по умолчанию), COOF или обеих сразу:

  1. В меню Project выберите Settings. Появится диалоговое окно Project Settings.

  2. Выберите закладку Link.

  3. В выпадающем списке Category выберите опцию Debug.

  4. Выберите Microsoft Format (default), COOF Format или Both Formats.

  5. Нажмите OK, чтобы активировать выбор опции и закрыть диалог.

Генерация карты символов

При отладке приложения, особенно если требуется делать специфические распечатки памяти, бывает полезен файл карты символов. Это просто текстовый файл, содержащий следующую информацию о компонуемой программе:

  • Имя модуля, или базовое имя файла.

  • Метка, времени для заголовка файла программы.

  • Список программных групп, со стартовым адресом каждой в форме segment::offset, а также длиной, именем и классом группы.

  • Листинг публичных символов, каждого со своим адресом (segment::off- set), именем, плоским адресом и файлом .obj, где он определен.

  • Входная точка модуля в форме segment::offset.

Чтобы генерировать файл карты символов, сделайте следующее:

  1. В меню Project выберите Settings. Появится диа­логовое окно Project Settings.

  2. Выберите закладку Link.

  3. В выпадающем списке Category выберите опцию Debug.

  4. Пометьте флажок Generate mapfile.

  5. Введите в текстовом окне Mapfile name желаемое имя выходного файла, или оставьте по умолчанию.

  6. Нажмите ОК, чтобы активировать выбор опции и закрыть диалог.

Переадресация ввода и вывода

Microsoft Visual C++ позволяет переадресовать ввод или вывод консольного приложения Win32 в любое место. Для этого нужно сделать следующее:

  1. В меню Project выберите Settings. Появится диа­логовое окно Project Settings.

  2. Выберите закладку Debug.

  3. В текстовом окне Program Arguments специфицируйте одну или не­сколько команд переадресации, перечисленных в таблице 3.2. Вы може­те указать любую их комбинацию.

  4. Нажмите ОК, чтобы активировать переадресацию и закрыть диалог.

В системе по умолчанию всегда открыты три  "файла" -- stdin (клавиатура), stdout (экран) и stderr (вывод сообщений об ошибках на экран). Эти и любые другие открытые файлы могут быть перенаправлены. В данном случае, термин "перенаправление" означает получение вывода из файла, команды, программы, сценария или даже отдельного блока в сценарии и передача его на вход в другой файл, команду, программу или сценарий.

С каждым открытым файлом связан дескриптор файла. Дескрипторы файлов stdin, stdout и stderr -- 0, 1 и 2, соответственно. При открытии дополнительных файлов, дескрипторы с 3 по 9 остаются незанятыми.

Таблица 3.2. Команды переадресации

1>filename

Перенаправление вывода (stdout) в файл "filename".

1>>filename

Перенаправление вывода (stdout) в файл "filename", файл открывается в режиме добавления.

2>filename

Перенаправление stderr в файл "filename".

2>>filename

Перенаправление stderr в файл "filename", файл открывается в режиме добавления.

&>filename

Перенаправление stdout и stderr в файл "filename".