Similar presentations:
Операции и выражения. Структура программы на C++
1. Операции и выражения. Структура программы.
Преподаватель: Гущин Павел Алексеевич2. Структура программы на C++
▪ Директивы препроцессора – подключают библиотекиСтруктура
программы на
C++
(#include <iostream>).
▪ Инструкции – выполняют действия, заканчиваются ;.
▪ Блоки – объединяют инструкции в {}.
▪ Точка входа – функция main().
3. Директивы препроцессора и заголовочные файлы
▪ #include – директива препроцессора.Директивы
препроцессора и
заголовочные
файлы
▪ Подключает заголовочный файл (например, iostream).
Заголовочный файл содержит описания функций.
▪ Прототип – объявление функции без тела.
▪ Вызов – использование функции по имени.
4. Этапы обработки текста программы
▪ Препроцессинг — обработка директив (#include).▪ Компиляция — перевод в объектный файл.
▪ Компоновка (линковка) — сборка всех файлов в .exe.
5. Главная функция main()
▪ int main() – точка входа.Главная
функция main()
▪ int – возвращаемый тип (целое число).
▪ {} – тело функции.
▪ return 0; - успешное завершение.
6. Ввод-вывод данных потоком
▪ cout – поток вывода. Оператор <<.Ввод-вывод
данных
потоком
▪ cin – поток ввода. Оператор >>.
▪ endl – перевод строки.
▪ getline() – взять всю строку из потока.
▪ setlocale(LC_ALL, "") – русский язык в консоли.
7. Приоритеты операций в выражениях
РангПриоритеты
операций в
выражениях
Операции
1
( ) [ ] -> .
2
! ~ — ++ — & * (тип) sizeof тип( )
3
* / % (мультипликативные бинарные)
5
+ — (аддитивные бинарные)
<< >> (поразрядного сдвига)
6
7
< > <= >= (отношения)
== != (отношения)
8
& (поразрядная конъюнкция «И»)
9
^ (поразрядное исключающее «ИЛИ»)
10
|
11
12
13
14
15
&& (конъюнкция «И»)
|| (дизъюнкция «ИЛИ»)
?: (условная операция)
= *= /= %= -= &= ^= |= <<= >>= (операция присваивания)
, (операция запятая)
(поразрядная дизъюнкция «ИЛИ»)
8. Приоритетные операции. Ранг 1
▪ () — вызов функции, группировка.▪ [] — доступ к элементу массива.
▪ . — доступ к полю структуры.
▪ -> — доступ к полю через указатель.
9. Унарные операции. Ранг 2
Унарные операции работают с одним операндом.▪ ! (логическое НЕ.)
Унарные
операции.
Ранг 2
▪ - (смена знака.)
▪ ++ / -- (инкремент/декремент.)
▪ & (взятие адреса.)
▪ * (разыменование.)
▪ sizeof (размер в байтах.)
10. Арифметические операции
▪ Ранг 3: *, /, % (мультипликативные).▪ Ранг 4: +, - (аддитивные).
Арифметические
операции
▪ * (умножение), / (деление), % (остаток).
▪ + (сложение), - (вычитание).
Важно: Если оба операнда целые — результат целый (5 /
2 = 2).
11. Поразрядный сдвиг. Ранг 5
▪ << (сдвиг влево.)▪ >> (сдвиг вправо)
Работают с битами числа.
12. Операции сравнения. Ранг 6
▪ Ранг 6: < > <= >= (отношения.)Операции
сравнения.
Ранг 6
▪ Ранг 7: == != (равенство.)
Результат – bool (true или false). Результатом операторов
отношения будет значение в типе данных «bool».
Важно: Не путайте = (присваивание) и == (сравнение).
13. Поразрядные операции
▪ Ранг 2: ~ (поразрядное НЕ)Поразрядные
операции
▪ Ранг 8: & (поразрядное И).
▪ Ранг 9: ^ (исключающее ИЛИ).
▪ Ранг 10: | (поразрядное ИЛИ).
Работают с отдельными битами числа.
14. Логические операции
▪ Ранг 11: && (логическое И).▪ Ранг 12: || (логическое ИЛИ).
Логические
операции
&& - истина, только если оба условия истинны.
|| - истина, если хотя бы одно истинно.
Приоритет && выше, чем ||.
15. Условная операция
▪ Ранг 13: «?:» или же «тернарный оператор».Условная
операция
Структура:
Условие ? значение_если_истина : значение_если_ложь
16. Операции присваивания
▪ Ранг 14: =, *=, /=, %=, -=, +=, &=, ^=, |=, <<=, >>=.Операции
присваивания
= (простое присваивание).
+= (например: x = x + 5)
Присваивание – очень низкий приоритет.
17. Операция запятая
▪ Ранг 15: «,»Операция
запятая
Самый низкий приоритет.
Выполняется последней.
18. Итог
▪ Чем меньше ранг – тем раньше выполняется операция.Итог
Запомните главное: скобки () имеют высший
приоритет, присваивание – низкий. Если сомневаетесь
– ставьте скобки.
programming