Лекции по программированию c
C++ с нуля
Этот самоучитель создан для тех, кто хочет освоить основы программирования на C++. Уроки рассчитаны, в первую очередь на новичков, но будут полезны и тем, кто уже имеет небольшой опыт в программировании. Мы начнем с основных принципов и закончим данный курс уже на более сложных примерах.
Первая программа на C++ — урок 1
В качестве среды разработки под Windows автор советует использовать Visual Studio 2008 (800 Мб), если у вас Windows XP, Visual Studio 2013 (6.5 Гб) для Windows 7 и выше, или Dev C++ 5 (41 Мб) для тех, у кого слишком медленный интернет для загрузки Visual Studio. Пользователям Unix-подобных систем, потребуется компилятор GCC и любой текстовый редактор, например Vim.
После того, как вы установили все необходимое, приступим к написанию первой программы.
Переменные и типы данных в C++ — урок 2
Из школьного курса математики мы все знаем, что такое переменные. В программировании принципы довольно схожи. Переменная — это «ячейка» оперативной памяти компьютера, в которой может храниться какая-либо информация.
Конструкция ветвления в C++ — урок 3
Встречаются ситуации, когда программе нужно выбрать, какую операцию ей выполнить, в зависимости от определенного условия.
К примеру, мы вводим с клавиатуры целое число. Если это число больше десяти, то программа должна выполнить одно действие, иначе — другое. Реализуем этот алгоритм на C++ с помощью конструкции ветвления.
Циклы в C++ — урок 4
Иногда необходимо повторять одно и то же действие несколько раз подряд. Для этого используют циклы. В этом уроке мы научимся программировать циклы на C++, после чего посчитаем сумму всех чисел от 1 до 1000.
Массивы в C++ — урок 5
Сегодня мы с поговорим о массивах. Вы уже знаете, что переменная — это ячейка в памяти компьютера, где может храниться одно единственное значение. Массив — это область памяти, где могут последовательно храниться несколько значений.
Возьмем группу студентов из десяти человек. У каждого из них есть фамилия. Создавать отдельную переменную для каждого студента — не рационально. Создадим массив, в котором будут храниться фамилии всех студентов.
Функции в C++ — урок 6
Сегодня мы поговорим о функциях в C++. Очень часто в программировании необходимо выполнять одни и те же действия. Например, мы хотим выводить пользователю сообщения об ошибке в разных местах программы, если он ввел неверное значение. без функций это выглядело бы так:
Указатели в C++ — урок 7
При выполнении любой программы, все необходимые для ее работы данные должныбыть загружены в оперативную память компьютера. Для обращения к переменным, находящимся в памяти, используются специальные адреса, которые записываются в шестнадцатеричном виде, например 0x100 или 0x200 .
Если переменных в памяти потребуется слишком большое количество, которое не сможет вместить в себя сама аппаратная часть, произойдет перегрузка системы или её зависание.
Динамические массивы в C++ — урок 8
В пятом уроке мы разобрали понятие массива. При объявлении, мы задавали массиву определенный постоянный размер.
Параметры командной строки в C++ — урок 9
При запуске программы из командной строки, ей можно передавать дополнительные параметры в текстовом виде.
Классы в C++ — урок 10
Весь реальный мир состоит из объектов. Города состоят из районов, в каждом районе есть свои названия улиц, на каждой улице находятся жилые дома, которые также состоят из объектов.
Практически любой материальный предмет можно представить в виде совокупности объектов, из которых он состоит. Допустим, что нам нужно написать программу для учета успеваемости студентов. Можно представить группу студентов, как класс языка C++. Назовем его Students .
C++ с нуля
Этот самоучитель создан для тех, кто хочет освоить основы программирования на C++. Уроки рассчитаны, в первую очередь на новичков, но будут полезны и тем, кто уже имеет небольшой опыт в программировании. Мы начнем с основных принципов и закончим данный курс уже на более сложных примерах.
Первая программа на C++ — урок 1
В качестве среды разработки под Windows автор советует использовать Visual Studio 2008 (800 Мб), если у вас Windows XP, Visual Studio 2013 (6.5 Гб) для Windows 7 и выше, или Dev C++ 5 (41 Мб) для тех, у кого слишком медленный интернет для загрузки Visual Studio. Пользователям Unix-подобных систем, потребуется компилятор GCC и любой текстовый редактор, например Vim.
После того, как вы установили все необходимое, приступим к написанию первой программы.
Переменные и типы данных в C++ — урок 2
Из школьного курса математики мы все знаем, что такое переменные. В программировании принципы довольно схожи. Переменная — это «ячейка» оперативной памяти компьютера, в которой может храниться какая-либо информация.
Конструкция ветвления в C++ — урок 3
Встречаются ситуации, когда программе нужно выбрать, какую операцию ей выполнить, в зависимости от определенного условия.
К примеру, мы вводим с клавиатуры целое число. Если это число больше десяти, то программа должна выполнить одно действие, иначе — другое. Реализуем этот алгоритм на C++ с помощью конструкции ветвления.
Циклы в C++ — урок 4
Иногда необходимо повторять одно и то же действие несколько раз подряд. Для этого используют циклы. В этом уроке мы научимся программировать циклы на C++, после чего посчитаем сумму всех чисел от 1 до 1000.
Массивы в C++ — урок 5
Сегодня мы с поговорим о массивах. Вы уже знаете, что переменная — это ячейка в памяти компьютера, где может храниться одно единственное значение. Массив — это область памяти, где могут последовательно храниться несколько значений.
Возьмем группу студентов из десяти человек. У каждого из них есть фамилия. Создавать отдельную переменную для каждого студента — не рационально. Создадим массив, в котором будут храниться фамилии всех студентов.
Функции в C++ — урок 6
Сегодня мы поговорим о функциях в C++. Очень часто в программировании необходимо выполнять одни и те же действия. Например, мы хотим выводить пользователю сообщения об ошибке в разных местах программы, если он ввел неверное значение. без функций это выглядело бы так:
Указатели в C++ — урок 7
При выполнении любой программы, все необходимые для ее работы данные должныбыть загружены в оперативную память компьютера. Для обращения к переменным, находящимся в памяти, используются специальные адреса, которые записываются в шестнадцатеричном виде, например 0x100 или 0x200 .
Если переменных в памяти потребуется слишком большое количество, которое не сможет вместить в себя сама аппаратная часть, произойдет перегрузка системы или её зависание.
Динамические массивы в C++ — урок 8
В пятом уроке мы разобрали понятие массива. При объявлении, мы задавали массиву определенный постоянный размер.
Параметры командной строки в C++ — урок 9
При запуске программы из командной строки, ей можно передавать дополнительные параметры в текстовом виде.
Классы в C++ — урок 10
Весь реальный мир состоит из объектов. Города состоят из районов, в каждом районе есть свои названия улиц, на каждой улице находятся жилые дома, которые также состоят из объектов.
Практически любой материальный предмет можно представить в виде совокупности объектов, из которых он состоит. Допустим, что нам нужно написать программу для учета успеваемости студентов. Можно представить группу студентов, как класс языка C++. Назовем его Students .
Лекции по программированию c
рТЙНЕТ ОЕУМПЦОПЗП РТПЕЛФБ: РПУФТПЕОЙЕ ЗТБЖЙЛБ ЙОФЕТРПМСГЙПООПЗП РПМЙОПНБ оШАФПОБ РП ХЪМБН ЙОФЕТРПМСГЙЙ, ПФНЕЮБЕНЩН ЛМЙЛБНЙ НЩЫЙ, БТИЙЧ Newton.zip (ЖБКМЩ «main.cpp», «newton.h», «newton.cpp», «Newton.pro»).
ъБНЕЮБОЙЕ: Ч Qt5 Ч ЖБКМ РТПЕЛФБ «Newton.pro», ЛПФПТЩК УПЪДБЕФУС ЛПНБОДПК ОБДП ЧТХЮОХА ДПВБЧЙФШ УФТПЛХ
- ъБДБЮБ УПТФЙТПЧЛЙ НБУУЙЧБ. пГЕОЛБ НЙОЙНБМШОПЗП ЮЙУМБ УТБЧОЕОЙК Ч РТПЙЪЧПМШОПН БМЗПТЙФНЕ УПТФЙТПЧЛЙ.
- бМЗПТЙФН ВЩУФТПК УПТФЙТПЧЛЙ quickSort. тЕБМЙЪБГЙС БМЗПТЙФНБ, УПЮЕФБАЭБС ЙФЕТБГЙА Й ТЕЛХТУЙА, РТЙ ЛПФПТПК ТЕЛХТУЙС РТЙНЕОСЕФУС ФПМШЛП Л НЕОШЫЕК РПМПЧЙОЕ НБУУЙЧБ (ЮФП ПВЕУРЕЮЙЧБЕФ МПЗБТЙЖНЙЮЕУЛХА ПГЕОЛХ ЗМХВЙОЩ ТЕЛХТУЙЙ). йОЧБТЙБОФ ГЙЛМБ ДМС ЬФПК УИЕНЩ.
рТЙНЕОЕОЙЕ УИЕНЩ РПУФТПЕОЙС ГЙЛМБ У РПНПЭША ЙОЧБТЙБОФБ ДМС ОБРЙУБОЙС ЖХОЛГЙЙ partition, ТБЪДЕМСАЭЕК НБУУЙЧ ОБ ФТЙ ПФТЕЪЛБ: ЬМЕНЕОФЩ ОЕ ВПМШЫЕ НЕДЙБОЩ, НЕДЙБОБ, ЬМЕНЕОФЩ ОЕ НЕОШЫЕ НЕДЙБОЩ. - рЙТБНЙДБМШОБС УПТФЙТПЧЛБ (ЙМЙ УПТФЙТПЧЛБ ЛХЮЕК) heapSort: ЙДЕС, РТЙНЕОЕОЙЕ УИЕНЩ РПУФТПЕОЙС ГЙЛМБ У РПНПЭША ЙОЧБТЙБОФБ ДМС ОБРЙУБОЙС РТПЗТБННЩ Й ДПЛБЪБФЕМШУФЧБ ЕЕ РТБЧЙМШОПУФЙ. тЕБМЙЪБГЙС ЖХОЛГЙЙ sieve ЧПУУФБОПЧМЕОЙС ВЙОБТОПК ЛХЮЙ.
оБЙВПМЕЕ РПРХМСТОЩЕ БМЗПТЙФНЩ УПТФЙТПЧЛЙ.
Java-БРРМЕФ, ЗТБЖЙЮЕУЛЙ ЙММАУФТЙТХАЭЙК ТБЪМЙЮОЩЕ БМЗПТЙФНЩ УПТФЙТПЧЛЙ.
- уФБВЙМШОЩЕ БМЗПТЙФНЩ УПТФЙТПЧЛЙ (УПИТБОСАЭЙЕ ПФОПУЙФЕМШОЩК РПТСДПЛ ТБЧОЩИ ЬМЕНЕОФПЧ).
- уПТФЙТПЧЛБ УМЙСОЙЕН mergeSort, ЙДЕС. лМБУУЙЮЕУЛЙК ДЧХУФПТПООЙК (2-Way) БМЗПТЙФН УПТФЙТПЧЛЙ УМЙСОЙЕН: ТЕБМЙЪБГЙС ЖХОЛГЙЙ merge УМЙСОЙС ДЧХИ ХРПТСДПЮЕООЩИ НБУУЙЧПЧ, ТЕЛХТУЙЧОБС (ОЙУИПДСЭБС) Й ЙФЕТБФЙЧОБС (ЧПУИПДСЭБС) УИЕНЩ ТЕБМЙЪБГЙЙ БМЗПТЙФНБ УПТФЙТПЧЛЙ.
хМХЮЫЕОЙЕ ЛМБУУЙЮЕУЛПЗП БМЗПТЙФНБ УПТФЙТПЧЛЙ УМЙСОЙЕН: ЙУРПМШЪПЧБОЙЕ ЧУРПНПЗБФЕМШОПЗП НБУУЙЧБ ЧДЧПЕ НЕОШЫЕЗП ТБЪНЕТБ, ТЕБМЙЪБГЙС ЖХОЛГЙЙ mergeBlocks УМЙСОЙС ДЧХИ УПУЕДОЙИ ХРПТСДПЮЕООЩИ ВМПЛПЧ ПДОПЗП НБУУЙЧБ, ЛПФПТБС РПМХЮБЕФ ТЕЪХМШФБФ Ч ФПН ЦЕ НБУУЙЧЕ, Б ОЕ ЧП ЧУРПНПЗБФЕМШОПН. - уПТФЙТПЧЛБ УМЙСОЙЕН inPlaceMergeSort, ОЕ ЙУРПМШЪХАЭБС ЧУРПНПЗБФЕМШОПК РБНСФЙ (Ф.Е. ЙУРПМОСЕНБС ФПМШЛП У РПНПЭША ЬМЕНЕОФБТОЩИ ЛПНБОД УТБЧОЕОЙС compare Й ПВНЕОБ swap ЬМЕНЕОФПЧ НБУУЙЧБ): ЙДЕС, ТЕЛХТУЙЧОБС ТЕБМЙЪБГЙС ЖХОЛГЙЙ УМЙСОЙС ВМПЛПЧ inPlaceMergeBlocks.
- RADIX-УПТФЙТПЧЛБ (РПТБЪТСДОБС УПТФЙТПЧЛБ), ЙДЕС, ЧПЪНПЦОЩЕ УИЕНЩ ЕЕ ТЕБМЙЪБГЙЙ, ПГЕОЛЙ ЧТЕНЕОЙ ТБВПФЩ Й ПВЯЕНБ ЧУРПНПЗБФЕМШОПК РБНСФЙ.
Java-БРРМЕФ, ЗТБЖЙЮЕУЛЙ ЙММАУФТЙТХАЭЙК ТБЪМЙЮОЩЕ БМЗПТЙФНЩ УПТФЙТПЧЛЙ.
- вЙОБТОБС ЛХЮБ (Priority Queue): ПРТЕДЕМЕОЙЕ, УЧПКУФЧБ, ТЕБМЙЪБГЙС ОБ ВБЪЕ НБУУЙЧБ. бМЗПТЙФН дЙКЛУФТЩ ОБИПЦДЕОЙС ЛТБФЮБКЫЕЗП РХФЙ Ч ЗТБЖЕ (ФТБОУРПТФОПК УЕФЙ). рТЙНЕОЕОЙЕ ВЙОБТОПК ЛХЮЙ Ч БМЗПТЙФНЕ УПТФЙТПЧЛЙ ЛХЮЕК Й Ч БМЗПТЙФНЕ дЙКЛУФТЩ.
- оЕРТЕТЩЧОЩЕ Й УУЩМПЮОЩЕ ТЕБМЙЪБГЙЙ УФТХЛФХТ ДБООЩИ. йДЕС УУЩМПЮОПК ТЕБМЙЪБГЙЙ, ДПУФПЙОУФЧБ Й ОЕДПУФБФЛЙ ОЕРТЕТЩЧОЩИ Й УУЩМПЮОЩИ ТЕБМЙЪБГЙК.
- Введение в программирование на языке Си (860 Кб)29.03.2014
Изучение основных конструкций языка и приемов написания программ. - Xранение и обработка данных (792 Кб)21.11.2013
Язык Си: массивы, матрицы, структуры, символьные строки, структуры, рекурсия. - Разработка программ на языке Си (937 Кб)01.03.2014
Приемы проектирования программ, структурное программирование, целочисленные алгоритмы, численные методы, моделирование. - Динамические структуры данных в языке Си (666 Кб)11.06.2009
Списки, стеки, деревья, графы.
тЕБМЙЪБГЙС м2-УРЙУЛБ ОБ у++: ЛМБУУЩ L2ListHeader Й L2List. пУПВЕООПУФШ ТЕБМЙЪБГЙЙ У ЙУРПМШЪПЧБОЙЕН ДЙОБНЙЮЕУЛПК РБНСФЙ: ЬМЕНЕОФЩ УРЙУЛБ СЧМСАФУС ПВЯЕЛФБНЙ ЛМБУУБ, ЛПФПТЩК ОБУМЕДХЕФУС ЙЪ ЛМБУУБ L2ListHeader; РПЬФПНХ Х ЛМБУУБ L2ListHeader Й Х ОБУМЕДХЕНЩИ ЙЪ ОЕЗП ЛМБУУПЧ ДПМЦЕО ВЩФШ ЧЙТФХБМШОЩК ДЕУФТХЛФПТ.
Язык программирования Си
практический курс
Что это такое?
В свое время (1991-1992 года), выбрав язык Си в качестве основного языка программирования для математических классов, автор столкнулся с проблемой отсутствия нормальных учебников, которые можно было бы рекомендовать школьникам. Это вынудило его написать свой конспект лекций, который можно было бы назвать «Практический курс программирования на Си» — в него вошли те сведения, которые действительно требовались автору на практике. Многолетний опыт преподавания показал, что конспект действительно востребован и широко используется как школьниками, так и выпускниками.
В качестве среды разработки используется бесплатно распространяемая оболочка Dev-C++ с открытым исходным кодом, включающая компилятор GCC.
Автор будет благодарен за отзывы и конструктивную критику по поводу содержания и оформления этих материалов. Если вы заметили ошибку или у вас есть предложения, замечания, жалобы, просьбы и заявления, пишите.
Лицензионное соглашение
Все опубликованные ниже материалы могут быть свободно использованы в некоммерческих целях при условии сохранения авторства.
Скачивание материалов означает, что вы приняли условия этого лицензионного соглашения.
Скачать
Конспект распространяется свободно в формате PDF. Для просмотра требуется бесплатный просмотрщик Acrobat Reader. Конспект курса условно разбит на 4 части:
Презентации
Для преподавателей и учащихся могут быть полезны презентации, построенные на основе этого конспекта. Их можно скачать на странице Презентации.
Методика
В программе предусмотрено изучение языка Си в 7-11 классах:
Часть I представляет собой расширенный конспект курса 7 класса. Введение в язык Си строится на базе алгоритмической подготовки, которую дети получили в 6 классе, работая с исполнителями.
Основная задача — познакомить учащихся с основными конструкциями языка Си: циклами, условными операторами, процедурами. Весьма успешно проходит изучение разделов, связанных с графикой, анимацией.
Для работы с графикой через браузер можно использовать онлайн-сервис Антона Деникина.
Программа включает следующие разделы (в скобках указана часть конспекта): Массивы (II), Работа с файлами (II), Символьные строки (II), Вращение объектов (III), Моделирование (III). Особое внимание уделяется изучению алгоритмов работы с массивами, в том числе поиска, сортировки и т.п. Дается понятие об эффективности вычислительных методов.
Основное внимание уделяется изучению методов разработки программ на языке Си. Учащиеся выполняют индивидуальное задание, в ходе которого учатся строить графики на экране, знакомятся с преобразованиями систем координат, изучают методы решения уравнений, знакомятся с численными методами, учатся правильно оформлять программы (разделы 1-2 части III). Одно из заданий посвящено использованию метода Монте-Карло для вычисления площади сложной фигуры. Из новых разделов изучаются также Матрицы (II), Массивы символьных строк (II). Вводится понятие указателей и изучаются простейшие операции с ними.
Изучения языка Си выходит на более серьезный уровень. Основные темы — Управление памятью (II), Рекурсия (II), Структуры (II). Предусмотрено изучение языка Паскаль в качестве второго языка программирования. С этого момента алгоритмы на теоретических занятиях записываются поочередно на двух языках.
Изучаются не столько особенности языков, сколько алгоритмы. Основные разделы — Численные методы (III), Моделирование (III), Динамические структуры данных (IV).
Лекции — Основы программирования на C++ — файл Конспект лекций по С++.doc
Доступные файлы (1):
Конспект лекций по С++.doc
1.Переменные и операции языка С++ 3
ИЗУЧАЕМЫЕ ПОНЯТИЯ 3
Буквы и цифры 4
Пробельные символы 5
Знаки пунктуации и специальные символы 5
ESC- последовательности 6
Целые константы 9
Константы с плавающей точкой 10
Строковые литералы 11
Ключевые слова 13
ИСХОДНЫЕ ТЕКСТЫ ПРИМЕРОВ 15
2.Конструкции принятия решений и циклы 21
СТРУКТУРА ПРОГРАММЫ 23
Исходная программа 23
Спецификаторы типов 25
Деклараторы массивов, функций и указателей 27
Составные деклараторы 28
^ Об»явления переменной 30
Объявление простой переменной 31
Объявление перечисления 32
Объявления структур 33
Битовые поля 34
Об»явление совмещений 36
Об»явление массива 37
Об»явление функций 40
Классы памяти 42
Об»явления переменной на внешнем уровне 43
Об»явление переменной на внутреннем уровне 45
Об»явление функции на внешнем и внутреннем уровнях 47
Базовые типы и типы указателей 48
Составные типы 48
Строковые инициализаторы 51
Об»явления типов 51
Типы структур, совмещений и перечислений 52
Об»явления typedef 52
^ КОНТРОЛЬНЫЕ ВОПРОСЫ: 54
Объявление и определение функций 55
ТИПОВЫЕ ВОПРОСЫ С ОТВЕТАМИ 59
Контрольные вопросы 60
СОРТИРОВКА массива — ПРИМЕР в файле list6_4cpp. 65
ПОИСК в массиве 65
^ БИБЛИОТЕЧНЫЕ ФУНКЦИИ ПОИСКА и СОРТИРОВКИ в непрерывных массивах: 65
Строки и управление вводом/выводом 67
Форматированный потоковый вывод 67
Листинг 1. Исходный текст программы OUT1.CPP 68
Функция printf 69
Функция printf 69
Таблица 1. Еsс — последовательности 69
Таблица 7.2. Значения флагов строки формата функции printf 70
Таблица 3. Символы типов данных строки формата функции printf 71
Листинг 3. Исходный текст программы OUT2.CPP в файле List7-3.CPP 71
Таблица 4. Результат действия спецификаций форматирования в функции printf из строки 13 72
Функция getline 73
Присвоение значений строкам 74
Инициализация строки 74
Функция strcpy 75
Функция strdup 75
Функция strncpy 75
Определение длины строки 76
Функция strlen 76
Функция strcat 76
Функция strncat 76
Сравнение строк 77
Функция strcmp 77
Функция stricmp 77
Функция strncmp 78
(см. List7_5.cpp — Исходный текст программы STRING2.CPP) 79
Преобразование строк 79
Функция strlwr 79
Функция strupr 79
Обращение строк 79
Функция strrev 79
Поиск символов 80
Функция strchr 80
Функция strrchr 80
Функция Strspn 80
Функция strcspn 81
Функция strpbrk 81
Функция strstr 81
Функция strtok 82
Основы объектно-ориентированного программирования СИНТАКСИС ОСНОВНЫХ КОНСТРУКЦИЙ 83
Объявление базовых классов 83
Объявление иерархии классов 89
Виртуальные функции 90
Дружественные функции 93
Операции и дружественные операции 94
Виртуальные функции 95
Правило виртуальной функции 96
Операции и дружественные операции 99
^ ИСХОДНЫЕ ТЕКСТЫ ПРИМЕРОВ 100
ВОПРОСЫ И ОТВЕТЫ 101
Контрольные вопросы 102
ФАЙЛОВЫЕ ОПЕРАЦИИ ВВОДА/ВЫВОДА 103
Stream-библиотека C++ 103
ОБЩИЕ ФУНКЦИИ ПОТОКОВОГО ВВОДА/ВЫВОДА 103
Функция-компонент open 104
Функция-компонент close 104
^ ПОСЛЕДОВАТЕЛЬНЫЙ ТЕКСТОВЫЙ ПОТОК ВВОДА/ВЫВОДА 105
Функция-элемент getline 105
ПОСЛЕДОВАТЕЛЬНЫЙ ДВОИЧНЫЙ ФАЙЛОВЫЙ ВВОД/ВЫВОД 107
Функция-элемент write 107
Функция-элемент read 108
Файловый ввод/вывод с прямым доступом 111
Функция-элемент seekg 111
Вопросы и ответы 113
Контрольные вопросы 113
Переменные и операции языка С++
Здесь представлены базовые компоненты программ на С++. В их число
входят типы данных, переменные, константы и выражения.
ИЗУЧАЕМЫЕ ПОНЯТИЯ
— Предопределенные типы данных в С++ включают в себя типы int, char,
float, double и void. В языке С++ гибкость типов данных увеличивается
благодаря применению модификаторов типов. Эти модификаторы изменяют
точность представления и диапазон значений переменных. Модификаторами
типа являются signed, unsigned, short и long.
— Идентификаторы в С++ могут иметь длину до 32 символов и
должны начинаться с буквы или подчеркивания. Последующие символы
идентификатора могут быть буквой, цифрой или подчеркиванием. Иден-
тификаторы С++ чувствительны к регистру. Ограничение на 32 символа
может быть, однако, изменено путем установки опций компилятора.
— Директива #include является специальной командой компилятора. Она
предписывает компилятору включить в программу содержимое опреде-
ленного файла, как если бы вы сами ввели его в текущий исходный
— Объявление констант предусматривает использование директивы #define
для объявления констант, определенных при помощи макросов, или ис-
пользование ключевого слова const для объявления формальных кон-
стант. Формальные константы требуют от вас определения их типа
(значением по умолчанию является int), имени и ассоциированного с
— Объявление переменной требует, чтобы вы задали ее тип и имя, С++
дает вам возможность инициализировать переменную при ее объявлении.
Вы можете объявить несколько переменных в одном операторе объявле-
— Арифметическими операциями являются +, -, *, / и % (деление по
— Арифметические выражения различаются по сложности. Самое простое
выражение содержит единственный элемент данных (литерал, константу
или переменную). Сложные выражения включают набор операций, функ-
ции, литералы, константы и переменные.
— Операции инкремента и декремента используются в префиксной и пост-
фиксной формах. Язык С++ дает вам возможность применять эти опе-
рации к переменным, в которых хранятся символы, целые числа и даже
числа с плавающей точкой.
— Арифметические операции присваивания дают вам возможность записы-
вать более короткие арифметические выражения, в которых первый опе-
ранд является также переменной, принимающей результат вычислений.
— Оператор sizeof возвращает как для типов данных, так и для переменных
их размер в байтах.
— Механизм приведения типа дает вам возможность форсировать преобра-
зование типа выражения.
— Операции отношений и логические операции дают вам возможность стро-
ить логические выражения.
— Булевы выражения объединяют операции отношений и логические опе-
рации для формулирования нетривиальных условий. Эти выражения позволяют
программе принимать сложные решения.
— Условное выражение предлагает вам короткую форму для простого опе-
ратора if-else с двумя альтернативами.
— Операции манипулирования битами выполняют поразрядные операции
AND, OR, XOR и NOT. Кроме того, в С++ поддерживаются поразрядные
— Операции манипулирования битами с присваиванием предлагают корот-
кие формы для простых операций манипулирования битами.