Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Структура программ для MicrosoftVisualStudio.






1. // struct_program.срр: определяет точку входа для консольного приложения.

2. #include " stdafx.h"

3. //здесь подключаем все необходимые препрсцессорные директивы

4. voidmain() { // начало главной функции с именем main

5. //здесь будет находится ваш программный код

6. {

В строке 1 говорится о точке входа для консольного приложения, это значит, что данную программу можно запустить через командную строку Windows указав имя программы, к примеру, такое struct_program.cpp. Строка 1 является однострочным комментарием, так как начинается с символов //.

В строке 2 подключен заголовочный файл “stdafx.h”. Данный файл похож на контейнер, так как в нем подключены основные препроцессорные директивы (те, что подключил компилятор, при создании консольного приложения), тут же могут быть подключены и вспомогательные (подключенные программистом).

include– директива препроцессора, т. е. сообщение препроцессору. Строки, начинающиеся с символа # обрабатываются препроцессором до компиляции программы.

Препроцессорные директивы также можно подключать и в строках, начиная после записи #include “stdafx.h” до начала главной функции. Причём такой способ подключения библиотек является основным, а использование “stdafx.h”— это дополнительная возможность подключения заголовочных файлов, которая есть только в MVS.

С 4-й по 6-ю строки объявлена функция main. Строка 4 - это заголовок функции, который состоит из типа возвращаемых данных (в данном случае void), этой функцией, и имени функции, а также круглых скобок, в которых объявляются параметры функции.

void-тип данных не имеющий значения, т.е. он не может хранить никакой информации.

Между фигурными скобочками размещается основной программный код, называемый еще телом функции. Это самая простая структура программы. Данная структура написана в MicrosoftVisualStudio 2010 (MVS2010). Все выше сказанное остается справедливым и для других компиляторов, кроме строки 2. Контейнера “stdafx.h” нигде кроме MVS нет.

Пример структуры программы MVS2010 с подключенными библиотеками.

1. #include “stdafx.h”

2. #include < iostream>

3. using namespace std;

4. void main()

5. {

6. }

Имя подключаемых библиотек пишется внутри знаков больше, меньше. Заголовочные файлы и имя подключаемых библиотек - синонимы.

Синтаксис подключения заголовочных файлов:

#include< имя заголовочного файла>

Более старые заголовочные файлы подключаются так (этот стиль подключения библиотек унаследован у языка программирования С):

#include< имя заголовочного файла.h>

Различие состоит в том, что после имени ставится расширение.h.

Библиотеки предоставляют программисту возможность использовать при разработке программы готовые фрагменты кода. В библиотеки могут быть включены подпрограммы, структуры данных, классы, макросы. Для языка С++ разработано много библиотек различного назначения. Некоторые библиотеки используются по умолчанию, их подключение к проекту осуществляется автоматически (библиотека времени выполнения - RTL, RuntimeLibrary). Другие библиотеки можно использовать по требованию (в консольном приложении VC++- библиотека MFC), для этого следует подключить директивой include их заголовки и/или сделать соответствующие настройки проекта. Файлы, содержащие библиотеки, имеют расширение *.lib(статическая) и *.dll (динамическая).

Ход работы

Создадим консольное приложение на основе шаблона CLRпо шагам:

1. Загрузить среду VC++.

2. Выполнить команду File|New|Project

 

 

3. В этом окне выбрать опцию CLR ConsoleApplication, в его нижней части задать имя будущего проекта в поле Name (имя перекочует в поле SoIutionName). Затем установить папку, в которую будет помещен проект(кнопка Browse).

4. Нажать Ок.

Заготовка состоит из заголовка главной функции:

int main(array< System:: String ^> ^args)

и тела, ограниченного фигурными скобками.

5. Преобразуем заголовок функции main(аргументы функции) к виду main(), а из тела удалим оператор return 0. Удаление аргументов у главной функции означает, что у нее не будет аргументов, которые служат для связи нескольких консольных приложений между собой.

Среда VC++ оформляет приложение в виде двух контейнеров, вложенных один в другой. Главный контейнер называется Solution (Решение), а другой Project (Проект). Проект определен как конфигурация (каркас, контейнер), объединяющая группу файлов. Проекты являются частью другого каркаса, другого контейнера, который называется Solution (Решение) и который отражает взаимосвязь между проектами: одно Решение может содержать множество проектов, а проект содержит множество элементов, обеспечивающих существование приложения как такового. Можно сказать, что Решение это группа объединенных проектов. Среда VC++ автоматически формирует создаваемое приложение как группу проектов, содержащую собственно проект.

Мы видим, что над самой заготовкой консольного приложения есть две вкладки:

StartPage l.cpp. Расширение срр означает, что это исходный текст проекта на языке C++.

Рассмотрим некоторые файлы, попавшие в проект:

ü l.cpp - главный исходный файл и точка входа в создаваемое приложение;

ü stdafx.cpp - подключает для компиляции файл stdafx.h;

ü stdafx.h — если для проекта требуются какие-то дополнительные заголовочные файлы, то они задаются пользователем в этом файле;

ü ReadMe.txt - файл, описывающий некоторые из созданных шаблоном консольного приложения файлы проекта.

 

6. Записать в теле функции main() следующие строки:

Printf(“Неllо! \n”); //вывод на экран строки Hello!

_getch(); //зaдepжкa изображения

7. Откомпилируем приложение, выполнив команду Debug|BuildSolution и увидим следующую картинку:

8. Картинка показывает, что компиляция не удалась, мы видим сообщения об ошибках:

errorС3861: ’printf: identifier not found

error C3861: '_getch': identifier not found

 

это означает, что компилятор не узнает функции printf и getch. Если дважды щелкнуть кнопкой мыши на строке с информацией об ошибке, то в поле функции main() отметится та строка, в которой ошибка обнаружена.

 

9. Дважды щелкнуть на имени функции getch и нажать клавишу F1. В появившемся окне помощи мы найдем сведения о необходимой нам функции, в т. ч. и о местонахождении ее описания (Requiredheader< conio.h>). Если этот файл подключить к нашей программе, то компилятор станет находить сведения об этой функции и ошибка устранится. Включение файла с описанием функции (Headerfile - это файл оглавления, отсюда h в расширении) осуществляется оператором #include - это оператор компилятора. Он включает в текст программного модуля файл, который указан в угловых скобках.

Итак, в заголовке программы пишем #include< conio.h>.

Для устранения второй ошибки компиляции необходимо подключить к программе файл stdio.h.

 

10. Откомпилировать приложение, убедится, что ошибки исчезли.

 

11. Запустить программу на выполнение Debug|StartDebugging

 

12. Оформить отчет в программе MS Word. Отчет должен содержать

- название практической работы;

- формулировку цели работы;

- скриншот экрана с кодом программы;

- скриншот экрана с результатом выполнения;

- выводы по работе.

Контрольные вопросы.

1. Что такое консольное приложение?

2. Что такое программа на языке C++?

3. Какой командой осуществляется компиляция и сборка?


 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.