Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Программирование в среде Visual C++ 6. Учебное пособие
.pdf
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«САМАРСКИЙ ГОСУДАРСТВЕННЫЙ
АРХИТЕКТУРНО-СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ»
..
VISUAL C++ 6
-
21.12.2013 .
Самара
2014

УДК 681.3.06
К 38
..
Visual C++ 6:
/ .. . – Самара: СГАСУ, 2014. – 118 с.
ISBN 978-5-9585-0601-9
Учебное пособие предназначено для студентов 5 курса, обучающихся по специальности 270113 «Механизация и автоматизация строительства», и для магистрантов, обучающихся по программе 270814
«Комплексная механизация строительства» при изучении дисциплины
«Прикладное программирование в задачах автоматизации строительства». Может быть полезным студентам, преподавателям и научным сотрудникам, желающим освоить программирование в среде Visual C++ 6.
Описаны элементы базового языка программирования СИ и среды
автоматического программирования Visual C++ 6-ой версии, способы
создания программного кода в этой среде с учётом возможностей мастеров MFC AppWizard. Для облегчения программирования в этой среде
представлена полная разработка программы одной задачи, где используются множество возможностей среды Visual C++ 6.
Рецензенты:
Профессор, доктор технических наук, профессор кафедры
«Вычислительная техника» СамГТУ В.С. Семёнов.
Доцент, кандидат технических наук, доцент кафедры «Прикладная
математика и вычислительная техника» СГАСУ В.В. Козлов.
Профессор, доктор технических наук, профессор кафедры «Приклад-
ная математика и вычислительная техника» СГАСУ О.В. Прохорова.
УДК 681.3.06
ISBN 978-5-9585-0601-9
© В.К. Кивран, 2014
© СГАСУ, 2014

Для решения задач в области автоматизации имеется множество различных прикладных компьютерных программ. Но
часто по разным причинам требуется решения задач, не связанных с использованием упомянутых программ: их отсутствие на данном компьютере, сложности в их приобретении,
несовместимости исходных данных, неудобный вывод результатов и т.п. Поэтому для решения некоторых задач приходится прибегать к помощи более универсальных систем автоматического программирования.
Среди множества современных языков автоматического программирования выделяется язык , разработанный в США
в 70-х годах прошлого столетия. Язык с дальнейшим его
развитием универсален, с его помощью можно решать любые
задачи программирования, настолько, что современные графические редакторы типа ACAD, операционные системы используют именно этот язык. Этот язык совмещает в себе свойства
как языков высокого, так и нижнего уровня, хорошо переносит
переход на компьютеры с разной архитектурой и разными операционными средами. Программой поддерживается очень
широкий массив арифметических и логических операций, сохраняет блочную структуру построения рабочих программ, базовые типы отражают те же объекты, что и на языке ассемблера:
байты, машинные слова, символы, строки, предусмотрено использование составных объектов. В систему входит широкая библиотека стандартных математических функций.
— 3 —

При дальнейшем развитии языка в составные объекты
были введены соответствующие арифметические операции,
эти объекты получили название «классы». Так появился язык
++ или язык с классами. Дальнейшее развития языка
пошло по направлению разработки различных мастеров (Wiz-
ard), формирующих рабочую программу (программный код)
как приложение системы Windows. Программируемая среда
получила название Visual C++. В состав её входит библиотека
классов MCF. А использование диалоговых окон превратило
программирование в некую увлекательную игру. Используя
диалоговые окна, меню и командные строки, получаем рабочую программу с любым «красивым» интерфейсом, включая
необходимый способ вывода результатов вычисления.
В данной методической разработке остановимся на систе-
ме Visual C++6 (6 версия), приспособленной к 32-разрядному
процессору. Это наиболее простая, но достаточно мощная система для составления программного кода любой сложности.
— 4 —

1.
1.1. Алфавит
Множество символов языка СИ включает всебя прописные истрочные буквы латинского алфавита иарабские десятичные цифры от0 до9. Компилятор одну итуже букву прописную или строчную рассматривает как разные символы.
Втекстовых строках для вывода информации наэкран монитора, вкомментариях допускаются буквы русского алфавита.
Символы: , , ,
, , ,
, CONTROL-Z— называются пробельными символа-
ми. Последний как индикатор конца файла вставляется компилятором вконец файла автоматически при нажатии клавиши Enter. Компилятор эти пробельные символы игнорирует,
поэтому вставлять в командную строку их можно сколько
угодно. Поэтому текст рабочей программы (программного
кода) очень удобно структурировать. Комментарий тоже рассматривается как пробельный символ. Для организации текста для дополнительных компилятору указаний используются разделители, приведённые втаблице 1.1.
1.1
. Точка ! Восклицательный знак
, Запятая | Вертикальная черта
— 5 —

1.1
; Точка сзапятой / Слеш
: Двоеточие \ Наклонная черта влево
? Вопрос ~ Тильда
‘ Апостроф _ Подчёркивание
( Левая круглая скобка № Знак номера
) Правая круглая скобка % Процент
{ Левая фигурная скобка & Амперсанд
} Правая фигурная скобка ^ Стрелка вверх
[ Левая квадратная скобка - Знак минус
Правая квадратная
]
скобка
> Знак больше * Знак умножения
< Знак меньше / Знак деления
“ Двойные кавычки = Знак равенства
+ Знак плюс
Все эти символы имеются наклавиатуре.
В таблице 1.2 приведены специальные символы для спец-
ификации некоторых действий.
.
1.2
16-
\n 0A Новая строка
\t 09 Горизонтальная табуляция
\v 0B Вертикальная табуляция
\b 08 Забой
\r 0D Возврат каретки
\f 0C Новая страница
— 6 —

1.2
16-
\a 07 Звуковой сигнал
\’ 2C Апостроф
\” 22 Двойные кавычки
\\ 5С Обратный слеш
\ddd Байтовое представление в8-ном коде
\xdd Байтовое представление в16-ном коде
При работе стекстовым редактором ввод каждой строки
завершается нажатием клавиши Enter. Фактически в текст
вставляются два символа: новая строка и возврат каретки.
Однако компилятор воспринимает как один символ: новая
строка 0A.
В языке предусмотрено свыше 30 арифметических
илогических операций. Символы их приведены ниже, втаблице 1.3.
1.2. Константы
Константы используются для задания постоянных величин. Знак «минус» воспринимается как унитарный знак вычитания. Различают четыре типа констант: целые, сплавающей точкой, символы исимвольные строки.
. Целые константы всегда положительны. Они могут быть представлены вобычной десятичной системе счисления, в восьмеричной и шестнадцатеричной системах счисления.
Десятичные целые числа представляются последовательностью десятичных цифр от 0 до 9 без пробелов. Формат:
<ddd…>. Восьмеричное число представляется первым нулём
ипоследовательностью восьмеричных цифр от0 до 7. Формат: <0bbb…>. Шестнадцатеричное число представляется
— 7 —

двумя символами 0x или 0X споследовательностью шестнадцатеричных цифр: 0,1,2,3,4,5,6,7,8, 9, A, B, C, D, E, F.
1.3
! Логическое НЕ ++ Инкремент (+1)
- Минус, вычитание — Декремент (–1)
+ Плюс, сложение = Присваивание
Умножение, косвенная адре-
*
сация
/ Деление -=
% Остаток отделения *=
<< Сдвиг влево /= Тоже сделением
>> Сдвиг вправо %= Тоже состатком
> Больше >>=
< Меньше <<=
<= Меньше или равно &=
>= Больше или равно |=
== Равно ^=
!= Не равно ,
& Поразрядное И, адресация
| Поразрядное ИЛИ || Логическое ИЛИ
^ Поразрядное ИЛИ НЕТ && Логическое И
+=
Присваивание
сосложением
Тоже свычитанием
Тоже сумножением
Тоже сосдвигом
вправо
Тоже сосдвигом
влево
Тоже споразрядным И
Тоже споразрядным ИЛИ
Тоже споразр.
ИЛИ НЕТ
Последовательное
выполнение

Каждая константа компилятором преобразуется в машинный код размером либо в2, либо 4 байта взависимости
отвеличины числа. Если число меньше 32768, ей отводится
2 байта памяти (16 двоичных разрядов). Если число больше
этой величины, тоей отводится 4 байта памяти (32двоичных
разряда). При работе программного кода при встрече данного числа оно выбирается изоперативной памяти компьютера
поадресу, который задаётся компилятором. Если число более
2147483647, тооно либо игнорируется, либо усекается, либо
компилятор выдает ошибку. Двухбайтовое число побазовому типу данных имеет тип int, ачетырёхбайтовое число имеет тип long. Программист может путём добавления вконце
последовательности цифр суффикс L или l управлять длиной
константы.
Восьмеричные и шестнадцатеричные числа тоже могут
занимать либо два (типы int или unsigned int), либо четыре
байта (тип long или unsigned long). Здесь программист вправе
сам определить тип long путём добавления суффиксы l или L.
. Это положительное десятичное число свозможной дробной частью. Формат числа:
[<цифры целой части>] [.<цифры дробной части>] [признак порядка] [знак порядка] [<цифры порядка>]. Признак
порядка— это символы E или e. Положительный знак порядка может быть опущен. Если порядок числа равен нулю,
топризнак порядка исам порядок вместе сознаком могут
отсутствовать. Если имеется признак порядка, тодробная
часть числа вместе сточкой может тоже отсутствовать. Может отсутствовать ицелая часть, если присутствует только
дробная часть числа. Все константы с плавающей точкой
имеют тип double, им отводится по8 байт памяти (64 двоичных разряда). Можно, конечно, константе присвоить тип
— 9 —

oat (числу отводится 4 байта), добавив вконце числа суффикс F или f.
Константы типа oat представляются в машинном коде
до5…6 верных знака после десятичной точки, ачисла типа
double сточность свыше 12…15 верных знака после десятичной точки.
Примеры записи чисел: 12.576Е-2; 213, 15.75;.75, 25., —.175Е 6.
Здесь впоследнем примере знак числа «минус» восприни-
мается как унитарная операция вычитания.
представляют собой любую бук-
ву, цифру, знак пунктуации или специальный символ, заключённый взнак апострофа. Например, ‘a’, ‘B’, ‘.’, ‘+’, ‘/n’ идр. Перед
символом апострофа или обратный слеш ставится дополнительный обратный слеш, это ‘/’’ и‘//’. Символьные константы
имеют тип int размером вдва байта. Младший байт содержит
код символа, астарший байт— его знаковое расширение.
представляют собой последователь-
ность символов, заключённых вдвойные кавычки. Например,
“Файл”, “math.h”, “253,5” идр. Символьные строки имеют тип
char, каждый символ занимает один байт, апосле последнего
символа компилятор автоматически ставится символ конца
строки (‘\0’).
1.3. Идентификаторы
Это имена переменных. Все идентификаторы обязательно
вводятся в объявлении переменных. Идентификатор — это
последовательность латинских прописных истрочных букв,
цифр изнака подчёркивания, причём первым символом обязательно должна быть буква или знак подчёркивания. Количество символов может быть до32, ноочень длинные идентификаторы неудобны при составлении программ, удобнее
— 10 —
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
