Самостоятельная работа 1
Задание 2
Создание консольного приложения для платформы Win32 (способ 2 –
с использованием шаблона с необходимыми элементами),
Выполнение отладки
1. Открыть решение из папки Prakt1в среде программирования.
ЗАМЕЧАНИЕ: для открытия группового проекта следует запустить (загрузить в среду) файл решения (файл с расширением .sln – перечень проектов) из папки с решением (например, файл Prakt1.sln), открыть главный исходный файл и точку входа в создаваемое приложение с листингом программы – файл с расширением .cpp (например, файл programm1.cpp).
2. Создать (добавить) в данном решении Prakt1еще один проект консольного приложения для платформы Win32– не пустой – под именем Prakt1_2.
ДЕЙСТВИЯ:
1) В Обозревателе решений вызвать контекстное меню на названии решения (например, Решение Prakt1) ® Добавить ® выбрать Создать проект.
2) Ввести в поле Имя имя нового проекта, например, Prakt1_2
3) Выполнить действия, аналогично заданию 1, но выбрать непустой проект в дополнительных параметрах.
ЗАМЕЧАНИЕ: полученная таким образом заготовка консольного приложения будет содержать в папках проекта следующие файлы:
· Prakt1_2.cpp– файл с исходным текстом проекта – главный исходный файл и точка входа в создаваемое приложение · stdafx.cpp– подключает специальный файл VsVimTestCpp.pchдля компиляции приложения · stdafx.h– файлы предкомпилируемых заголовков – подключает специальные файлы (заголовочные) для компиляции приложения · targetver.h – позволяет использовать специфические свойства Windows Vista · ReadMe.txt– описание проекта – файл, описывающий некоторые из созданных шаблоном консольного приложения файлов проекта. Просмотреть его можно будет через контекстное меню командой Открыть. |
4) В данной заготовке в файле исходного кода Prakt1_2.cppполучаем следующий заголовок главной функции с аргументами, служащими для связки консольных приложений:
5) Поскольку в проекте не будет использована связка консольных приложений, то в файле исходного кода Prakt1_2.cppможнопреобразовать заголовок главной функции к виду _tmain(), а из тела функции после этого следует удалить оператор return 0
3. В теле исходного модуля написать директиву на подключение заголовочного файла подключения потоков ввода-вывода и определить пространство имен.
4. В теле главной функции _tmain() написать операторы:
cout << "Hello, world!!!" << '\n';
cout << '\a';
cout<< "******************************" << '\n';
cout << "Hello, my group 1PI!!!" << '\n';
cout<< "******************************" << '\n';
5. Установить активным запускаемым проектом проект Prakt1_2:в Обозревателе решений вызвать контекстное меню на названии проекта ® выбрать Назначить запускаемым проектом (Set As StartUp Project) (или выбрать в верхнем меню пункт Проект (Project) ® Назначить запускаемым проектом (Set As StartUp Project)).
6. Построить проект Prakt1_2,исправить при необходимости ошибки.
7. Выполнить отладку программы следующим образом:
1) Выполнить программу до точки прерывания или до курсора (см. методы отладки в файле Осн. приемы работы в VS 2008.pdf) так, чтобы в консоли вывелась только первая фраза Hello!!!, и сохранить окно консоли на этом этапе для файла отчета.
2) Затем продолжить пошаговое выполнение программы до тех пор, пока не выведется строка Hello, my group 1М!!! и сохранить окно консоли на этом этапе для файла отчета.
3) Закончить отладку пошагово или с помощью обычной отладки.
8. Сохранить изменения в проекте.
9. Закрыть решение.
10. Ознакомиться с содержимым папки решения Prakt1,в том числе папки проекта Prakt1_2.
КОНТРОЛЬНЫЕ ВОПРОСЫ
1. Отличие решения от проекта?
2. Как создать проект Visual C++ по шаблону консольного приложения Win32. Заготовки каких проектов при этом можно получить? Чем они отличаются?
3. Описать содержимое каталога решения (назначение файлов).
4. Как добавить проект в существующее решение?
5. Как выбрать проект для текущего запуска среди проектов в решении?
6. Как задать вывод русских букв в консоли?
7. Какие существуют разновидности ошибок?
8. Что значит откомпилировать и построить проект, как выполняется?
9. Как получить контекстно-зависимую подсказку (справку о конкретной ошибке)?
10. Что такое отладка? Для чего она предназначена?
11. Какие средства отладки предоставляет среда разработки MS Visual C++?
12. Что такое точка остановки (breakpoint)?
13. Какие дополнительные условия можно устанавливать в точке остановки?
14. Какие возможности существуют для слежения за значениями переменных во время отладки?
15. Как изменить значение переменной?
16. Какие горячие клавиши для работы с отладчиком можно использовать?
17. В чем отличие команд запуск на выполнение с отладчиком и без?