
Рекомендуемая литература к разделу
“Алгоритмы и элементарное программирование”
1. С++. Элементарное программирование: учеб. пособие / Ю.В. Сбоева. – М.: РХТУ им. Д.И. Менделеева, 2018. – 56 с.
2. Основы языка программирования Си: учеб. пособие / Н.А. Федосова, А.В. Женса, В.А. Василенко, Е.С. Куркина. – М.: РХТУ им. Д.И. Менделеева, 2014. – 136 с.
3. Ишкова Э.А. Изучаем С++ на задачах и примерах.– СПб.: Наука и техника. 2016. – 240 с.: ил.
С++ является компилируемым высокоуровневым языком программирования. Создан в начале 1980-х годов сотрудником фирмы Bell Laboratories Бьярном Страуструпом (Bjarne Stroustrup). Автор основал синтаксис С++ на синтаксисе языка С, добавив возможность работы с классами и объектами. В настоящее время существуют две версии: старая традиционная, предложенная Бьярном Страуструпом, и новая стандартная, разработанная Бьярном Страуструпом и комитетом ANSI/ISO (American National Standards Institute/International Standards Organization).
Язык программирования С++ постоянно развивается, значительно и быстро изменяется, широко применяется для разработки программного обеспечения (операционные системы, драйверы устройств и др.). Процесс составления программ значительно упрощается, если использовать IDE (Интегрированная среда разработки). IDE представляет собой сочетание текстового редактора и компилятора. Написание исходного кода, компиляция и запуск программ выполняется непосредственно в Интегрированной среде разработки. Примером такой среды является приложение Microsoft Visual Studio Community 2015 (компилятор С++ Visual Studio.NET 2015) (Microsoft.NET Framework версия 4.7.02053).
Структура программы на языке С++
Исходный код в общем виде включает директивы препроцессора и описания функций, среди которых обязательно присутствует основная (главная) с именем main. Простейшая программа содержит только главную функцию и имеет следующую структуру:
void main() {
определения_объектов;
исполняемые_операторы;
}
Круглые скобки показывают, что это программный блок, называемый функцией. Слово void обозначает отсутствие какого-либо возвращаемого этой функцией результата. Алгоритм в фигурных скобках, описывающий действия в программном блоке, называется телом функции. С основной функции main начинается выполнение программы.
По новой стандартной версии языка С++ оформление кода программы включает следующие элементы:
#include "stdafx.h" // заголовочный файл
#include <iostream> // заголовок
using namespace std; // пространство имён
#include <…..>
#include "…...h"
int main () {
.….
return 0;
}
Препроцессор С++, встречая директивы: #include "…...h" или #include <…..>, полностью копирует содержимое указанного файла в файл, в котором использована эта директива, в месте вызова директивы. Файл stdafx.h необходим для включения системных файлов и служебных файлов проекта. Заголовок <iostream> ‒ для организации потокового ввода-вывода (гарантирует вызов компилятором необходимых групп библиотечных функций). После директивы знак точка с запятой не ставится.
Новый стиль С++ использует оператор namespace ‒ пространство имён, область видимости для локализации идентификаторов и предотвращения конфликтов между ними. Стандартная часть С++ входит в пространство имён std. Оператор using логически функционирует так же, как и директива #include.
Спецификатор int перед main сообщает, что компьютеру возвращается целое число, в данном случае 0 (return 0;).
Элементы языка С++
Алфавит. В алфавит языка С++ входят:
латинские буквы: от a до z (строчные) и от A до Z (прописные);
десятичные цифры: 0,1,2,3,4,5,6,7,8,9;
специальные символы (к ним относится также пробел):
" { } , | [ ] ( ) + - / % \ ; ' : ? < = > _ ! & # ~ ^ . *
Комбинации некоторых символов, не разделённых пробелами, интерпретируются как один значимый символ. К ним относятся:
++ -- == && || << >> >= <= += -= *= /= ?: /* */ //
В С++ в качестве ограничителей комментариев используются как пары символов /* и */, так и символы //. В первом случае комментарий может быть многострочным, во втором ‒ только строчным.
Лексемы. Из символов алфавита формируются лексемы ‒ единицы текста программы, которые при компиляции воспринимаются как единое целое и не могут быть разделены на более мелкие элементы. К лексемам относятся идентификаторы, ключевые (служебные) слова, константы, знаки операций, разделители.
Идентификаторы. Последовательность латинских букв, цифр, символов подчёркивания, начинающаяся с буквы или символа подчёркивания, является идентификатором. С++ различает прописные и строчные буквы. Это значит, что, например, Max, MAX, max ‒ разные идентификаторы.
Ключевые слова. Совокупность ключевых слов составляет словарь языка. Все зарезервированные служебные слова содержат буквы латиницы и написаны на английском языке (в том числе с сокращениями). Ключевые слова запрещено использовать в любом другом качестве. Полный список служебных слов зависит от реализации языка, т.е. различается для разных компиляторов. В качестве примера приведём ограниченный список ключевых слов (табл. 1).
Таблица 1