Введение. Программирование на языке

Ю.А Петров

Программирование на языке

Высокого уровня

Часть 1

Утверждено в качестве учебного пособия

Ученым советом Государственного образовательного учреждения
высшего профессионального образования

«Комсомольский-на-Амуре государственный технический университет»

Комсомольск-на-Амуpе 2010


УДК 681.326:621.01

ББК 32.973.2-018.2 я7

П 305

Рецензенты:

Амосов О.С., доктор технических наук, профессор, заведующий кафедрой «Информатика» Амурского гуманитарно-педагогического государственного университета;

Тачалов А.Н., канд. техн. наук, доц., зам. начальника АСУ ТЭЦ 3

Петров Ю.А.

П 305 Программирование на языке высокого уровня. Ч. 1: учебное пособие / Ю.А. Петров. – 2-е изд. испр. и доп. – Комсомольск-на-Амуре: Государственное образовательное учреждение высшего профессионального образования «Комсомольский-на-Амуре гос. техн. ун-т», 2010. – 112 с.

ISBN 978-5-7765-0856-1

Изложены основы языка С/С++, реализованного в среде Microsoft Visual C++ версия 6.0. Рассматриваются интерфейс пользователя, конструкция языка, структурное и модульное программирование и др.

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

ББК 32.973.2-018.2 я7

© Государственное образовательное учреждение высшего профессионального образования «Комсомольский-на-Амуре государственный технический университет», 2010.

© Институт новых информационных технологий Государственного образовательного учреждения высшего профессионального образования «Комсомольский-на-Амуре государственный технический университет», 2010.

ISBN 978-5-7765-0856-1


Введение

Из языков программирования высокого уровня, имеющих значительный стаж работы, можно назвать Basic, C, C++, Pascal, Modula и ADA. Самым популярным среди начинающих пользователей, несомненно, является Basic, который изначально был ориентирован на тех, кто только делает первые шаги в программировании. Его преподают в школах на уроках информатики и в кружках программирования. Но это не значит, что он слаб и непригоден для серьезных задач: существует такой транслятор этого языка, как, например, Visual Basic компании Microsoft, который стал стандартом в разработке бизнес-решений и информационных систем. Ранее один из вариантов Basic был аппаратно встроен в базовое программное обеспечение IBM PC. Даже в комплект поставки операционной системы MS-DOS входит разновидность Basic – QBasic.

Другим языком, изначально предназначавшимся для обучения, является Pascal. Его разработка была осуществлена швейцарским профессором Николаусом Виртом специально для учебных целей. Во многих университетах и колледжах Pascal используют в качестве базового языка при изучении основ программирования. Но его популярность превзошла все ожидания. В настоящий момент этим языком пользуются миллионы программистов по всему миру. Очередной этап развития Pascal, Object Pascal, был создан компанией Borland и также получил признание среди разработчиков, став одним из самых любимых языков программирования. Самые популярные системы для программирования на языке Pascal – Borland Pascal и TopSpeed Pascal.

Язык C существует уже более 35 лет. Он был разработан в 1972 году специально как главный инструмент для написания операционных систем, и в частности UNIX. Отличительными особенностями языка C можно назвать лаконичность, возможность непосредственного управления операционной системой и практически неограниченные возможности. Это и обеспечило ему лидерство в индустрии разработки программного обеспечения. Даже большая часть самой распространенной операционной системы DOS написана с использованием языка C.

Впоследствии язык C был дополнен и сделан объектным. Новый язык получил название C++. В настоящий момент он лидирует на рынке программных средств. На этом языке разработано огромное количество библиотек программных расширений, облегчающих и ускоряющих разработку. Среди средств разработки на языке С++ выделяются Borland C++, Microsoft C++, Symantec C++ и Watcom C++.

Среда Visual C++ (VC++) является мощной, гибкой и удобной системой разработки приложений для Windows. С ее помощью можно создать практически любую программу – от текстового редактора или электронной таблицы до любых «авторских программ».

Студия разработчика фирмы Microsoft (Microsoft Developer Studio) – это интегрированная среда для разработки, позволяющая функционировать различным средам разработки, в том числе Visual C++. В ней можно строить обычные программы на языках C и С++, создавать статические и динамические библиотеки, но основным режимом работы является создание Windows-приложений. Все, что может быть сделано в среде Windows, может быть сделано при помощи VC++. Система VC++ дает программисту всю мощь и гибкость языка программирования высокого уровня.

Языки Modula и ADA занимают скромное положение на рынке программных средств. Первый из них, Modula, был разработан все тем же Николаусом Виртом, автором знаменитого языка Pascal, как логическое его продолжение. Поэтому язык Modula очень похож на Pascal. Отличается Modula тем, что данные и код в этом языке представляются и хранятся в виде модулей. Отсюда и его название. Что же касается ADA, то это хоть и не сильно распространенный язык, но, тем не менее, заслуживший авторитет. Он родился в США по заказу американских военных. Его основная задача – разработка сверхнадежного программного обеспечения для военных нужд, которое к тому же должно иметь возможность использоваться повторно. Конечно же, этот язык используется и в гражданских разработках. Появление нового стандарта языка, ADA-95, дало возможность расширить границы его применения.

В конце каждого раздела предлагается задание для выполнения лабораторной работы или расчётно-графического задания (РГЗ).

Вариант задания для лабораторных работ и РГЗ выбирается по двум последним цифрам номера зачётной книжки или указывается преподавателем.

Вариант Две последние цифры номера зачетной книжки Вариант Две последние цифры номера зачетной книжки
  00, 30, 60, 90   15, 45, 75
  01, 31, 60, 91   16, 46, 76
  02, 32, 62, 92   17, 47, 77
  03, 33, 63, 93   18, 48, 78
  04, 34, 64, 94   19, 49, 79
  05, 35, 65, 95   20, 50, 80
  06, 36, 66, 96   21, 51, 81
  07, 37, 67, 97   22, 52, 82
  08, 38, 68, 98   23, 53, 83
  09, 39, 69, 99   24, 54, 84
  10, 40, 70   25, 55, 85
  11, 41, 71   26, 56, 86
  12, 42, 72   27, 57, 87
  13, 43, 73   28, 58, 88
  14, 44, 74   29, 59, 89

Отчет, оформленный в текстовом редакторе Word, с исходным кодом и результатами работы программы, распечатанным на бумаге и в электронном виде, необходимо защитить у преподавателя кафедры.


1 Создание консольных приложений
с помощью мастера проектов
в Visual C++ 6

При создании Windows-приложений используется важное понятие – «проект».

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

Разработка проекта программы – это выработка стратегического замысла, формулировка целей, анализ ресурсных возможностей, путей и способов достижения целей, обоснование избранного варианта действий. До сих пор приложение рассматривалось как совокупность объектов базовых и производных классов. Но для обеспечения работы приложения требуется нечто большее – наряду с описанием классов необходимо описание ресурсов, связанных с приложением, нужна справочная система и т.п. Термин «проект» как раз и используется, когда имеется в виду такой более общий взгляд на приложение. В проекте будет храниться вся информация, необходимая для построения отдельной программы: имена и взаимосвязи исходных файлов, списки требуемых библиотечных файлов и всех параметров компилятора, компоновщика, а также других инструментов, используемых при построении.

В среде Visual C++ можно строить проекты различных типов. Такие проекты после их создания можно компилировать и запускать на исполнение. Фирма Microsoft разработала специальный инструментарий, облегчающий и ускоряющий создание проектов в среде Visual C++. Например, мастер MFC AppWizard (exe) позволяет создать проект Windows-приложения, которое имеет однодокументный, многодокументный или диалоговый интерфейс и использует библиотеку MFC.

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

Для того чтобы создать проект консольного приложения, нужно запустить Visual C++ и выбрать команду File/New (рис. 1.1). Затем в закладке Projects следует выбрать Win32 Console Application (консольное приложение для Win32), работающее в текстовом режиме. В поле Project name необходимо записать имя разрабатываемого проекта (например, Ex_1), а в поле Location – путь к папке, называемой каталогом проекта, в которой будут содержаться файлы проекта. По умолчанию каталогу проекта и рабочей области присваиваются одинаковые имена. Чтобы изменить расположение каталога проекта, можно нажать кнопку с многоточием.

Завершая работу с вкладкой Projects диалогового окна New, нужно убедиться, что в области Platforms отмечен пункт Win32, являющийся 32-разрядным интерфейсом прикладного программирования (API – Application Programming Interface).

Программы Win32, разрабатываемые с помощью Visual C++, являются 32-разрядными, т.е. при их выполнении задействованы 32-разрядные регистры и используются 32-битная разрядность целых чисел, а также адресация ячеек памяти с единым 32-разрядным адресом. Теоретически это позволяет программе адресовать до 4 Гбайт виртуальной памяти.

После нажатия кнопки Ok появляется диалоговое окно Win32 Console Application – Step 1 of 1 (рис. 1.2). Теперь мастер проектов хочет знать: What Kind of Console Application do you want to create? (Какое консольное приложение следует создать?) и предлагает следующие варианты:

1) An empty project(Пустой проект);

2) A simple application (Простое приложение);

3) A “Hello World!” application (Приложение “Hello World!”);

4) An application that supports MFC(Приложение с поддержкой MFC).


Пользователь выбирает нужный вариант и нажимает кнопку Finish. Мастер проектов создаёт заготовку консольного приложения, которую необходимо дополнить исходными кодами разрабатываемой программы. Рассмотрим первые три консольных приложения более подробно.

При выборе консольного приложения

An empty project (Пустой проект – имя проекта Ex_1)

мастер проектов создает пустые файлы.dsw (workspace – рабочая область),.dsp (project – проект) и некоторые другие файлы, а также пустую папку Debug – для отладочной, либо Release – для рабочей версии приложения. Для выбора версии приложения нужно выполнить команду Build/Set Active Configuration и выбрать активную конфигурацию проекта (Debug (отладочная версия) или Release (рабочая версия)).


Если щелкнуть на вкладке FileView внизу окна Workspace (рис. 1.3), то имена рабочей области, проекта (Ex_1) и папок, принадлежащих этому проекту, будут отображены в виде дерева (рис. 1.4, а). Чтобы увидеть их имена, необходимо развернуть соответствующую ветвь, щелкнув на символе «+» (или «-») слева от узла ветви.


Таким образом, в результате работы мастера проектов в окне workspace (рис. 1.4) появятся пустые папки Source Files, Header Files, Resource Files – для файлов исходного кода программы, заголовочных файлов и файлов ресурсов соответственно, с которыми дальше будет работать программист. Этим способом рекомендуется пользоваться, когда нужно создавать собственные исходные файлы. Для записи исходного файла нужно щелкнуть левой кнопкой мыши на кнопке, расположенной первой слева на стандартной панели инструментов (New Text File). Откроется новое окно редактирования, в которое вводится исходный код. Затем следует сохранить созданный файл до его компиляции и компоновки, а тем более до ее выполнения.

Чтобы сохранить только что созданный код, можно щелкнуть на третьей кнопке слева на стандартной панели инструментов (Save), выбрать в меню File команду Save, или нажать [Ctrl+S]. Когда выбирается команда Save в первый раз, открывается диалоговое окно Save и запрашивается имя файла (*), которое нужно указать с расширением с(*.с) или cpp(*.cpp). Каждый созданный файл нужно добавлять в проект.

Для этой цели нужно сделать файл (*) активным и щелкнуть правой кнопкой мыши на нем. Появится контекстное меню (рис. 1.5).

Выполнив команду Insert Files into Project, файл (*.срр) будет включен в проект. После этого его можно компилировать, компоновать и выполнять.

При выборе консольного приложения

A simple application (Простое приложение – имя проекта Ex_2)


мастер проектов создает такие же папки, как и для An empty project (рис. 1.6), а в них некоторые файлы.

В результате работы мастера проектов в окне workspaces (вкладка FileView) появятся папки Source Files, Header Files, Resource Files – для файлов исходного кода программы (Ex_2.cpp, StdAfx.cpp), заголовочных файлов (StdAfx.h) и файлов ресурсов соответственно, с которыми дальше будет работать программист.

Можно открыть исходный файл (или отобразить его, если он уже открыт),
выполнив двойной щелчок на его имени в дереве:

// Ex_2.cpp: Defines the entry point for the console application.

#include "stdafx.h"

int main(int argc, char* argv[ ])

{

return 0;

}

Прокомментируем его. В первую строчку мастер проектов записал комментарии, в которых указал имя создаваемого файла (Ex_2.cpp) и то, что им создано (точка входа для консольного приложения).

Далее с помощью директивы#include подключается создаваемый мастером проектов файл stdafx.h,вкоторомбудут храниться откомпилированные файлы. Поскольку этот файл создается системой, то он заключается не в угловые скобки (<*.h>), а в двойные кавычки (“*.h ”).

Если каждый раз в проекте компилировать все файлы заново, то это будет отнимать много машинного времени, даже если вносятся изменения только в один какой-нибудь файл. Поэтому в stdafx.h записываются только те файлы, которые изменяются редко (или вообще не изменяются) и которые будут использоваться как уже откомпилированные.

Затем создается главная функция main() с аргументами, необходимыми для доступа к параметрам командной строки. Если имеется такой шаблон проекта, программисту достаточно написать только тело функции main().

Таким образом, вкладка FileView наиболее полезна для проектов, в которых имеется несколько исходных файлов.

Если щелкнуть на вкладке ClassView внизу окна Workspace, то появится дерево,
в котором перечислены все глобальные символические обозначения, определенные
в программе Ex_2. Если выполнить двойной щелчок на символе, представленном на вкладке ClassView (например, main или Name), то Developer Studio отобразит исходный файл, в котором определено это обозначение, и поместит указатель на его определении. Для программ, содержащих классы, вкладка ClassView отображает все определенные в программе классы и их члены.

Вариант работы мастера проектов

A “Hello World!” application (имя проекта – Ex_3)

является практически бесполезным. Формируется такой же шаблон проекта, как и в предыдущем случае (A simple application), с той лишь разницей, что шаблон выводит с помощью функции printf() строку “Hello World!” на экран:

// Ex_3.cpp: Defines the entry point for the console application.

//

#include "stdafx.h"

int main(int argc, char* argv[])

{

printf("Hello World!\n");

return 0;

}

Прототип функции printf() находится в файле stdio.h, который мастер проектов подключил в файл stdafx.h автоматически. Функция printf() была создана в языке С, тем не менее, её очень часто можно встретить во многих программах. Формат функции следующий:

int printf(const char*, …)

Функция возвращает количество выведенных символов. В случае строки “Hello World!” их будет 13 (включая “\0” в конце строки). В качестве параметра она принимает строку в кавычках, в которой могут указываться спецификаторы типа (%d – целые, %s – строка, %c – символ, %f – с плавающей точкой единичной точности и т.д.).


Задание на лабораторную работу 1
ИЗУЧЕНИЯ ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ
MICROSOFT VISUAL C++ V.6.0

Цель:

· изучить интерфейс пользователя Microsoft Visual C++ v.6.0 для создания простых консольных приложений (см. приложение 1);

· изучить структуру шаблонов, создаваемых мастером проектов;

· ознакомиться со структурой Microsoft Visual C++.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: