- •ОПЕРАЦИИ В ЯЗЫКЕ
- •ОПЕРАЦИИ В ЯЗЫКЕ С .
- •Lзначение (Lvalue) –
- •LЗНАЧЕНИЕ (LVALUE).
- •УНАРНЫЕ ОПЕРАЦИИ.
- •БИНАРНЫЕ ОПЕРАЦИИ.
- •БИНАРНЫЕ ОПЕРАЦИИ.
- •БИНАРНЫЕ ОПЕРАЦИИ.
- •ТЕРНАРНАЯ ОПЕРАЦИЯ.
- •БИНАРНЫЕ ОПЕРАЦИИ.
- •Пример:
- •Операция определения размера sizeof.
- •ОПЕРАЦИЯ ОПРЕДЕЛЕНИЯ РАЗМЕРА
- •Пример:
- •Операция определения размера sizeof
- •Арифметическое отрицание
- •Деление (/) и остаток от деления (%)
- •Пример:
- •ОПЕРАЦИИ ОТНОШЕНИЯ.
- •ПОРАЗРЯДНЫЕ ОПЕРАЦИИ.
- •поразрядная конъюнкция
- •Пример:
- •Логические операции (&& и ||)
- •ЛОГИЧЕСКИЕ ОПЕРАЦИИ.
- •логическое И
- •Пример:
- •В сложных операциях присваивания
- •Условная операция (?:)
- •Формат условной операции:
- •Пример:
- •Другой пример
- •Замечания
- •Замечания
- •Если операнды, входящие в выражение, имеют разный тип,
- •Преобразования бывают двух типов:
- •В любом случае величины типов
ОПЕРАЦИИ В ЯЗЫКЕ
С
ОПЕРАЦИИ В ЯЗЫКЕ С .
В соответствии с количеством операндов, которые используются в операциях, они делятся на:
•Унарные - один операнд.
•Бинарные - два операнда.
•Тернарную - три операнда.
Все операции, кроме условной и sizeof,
могут быть перегружены.
Пробелы между символами внутри операции не допускаются.
2
Lзначение (Lvalue) –
любое выражение, адресующее некоторый участок памяти, в который можно занести значение.
3
LЗНАЧЕНИЕ (LVALUE).
Название Lvalue произошло
от операции присваивания, поскольку именно ее левая (Left) часть определяет, в какую область памяти будет занесен результат операции.
Переменная является частным
случаем Lзначения.
4
УНАРНЫЕ ОПЕРАЦИИ.
Операция |
Краткое описание |
++ |
увеличение на 1 |
-- |
уменьшение на 1 |
sizeof |
размер |
~ |
поразрядное отрицание |
! |
логическое отрицание |
- |
арифметическое отрицание (унарный минус) |
+ |
унарный плюс |
& |
взятие адреса |
* |
разадресация (косвенная адресация); |
new |
выделение памяти |
Delete |
освобождение памяти |
(type) |
преобразование типа |
Унарные операции имеют наивысший приоритет
5
БИНАРНЫЕ ОПЕРАЦИИ.
Операция Описание Операция Описание Операция Описание
П |
|
|
|
|
|
остаток от |
|
Р |
* |
умножение |
/ |
деление |
% |
||
деления |
|||||||
И |
|
|
|
|
|
||
О |
|
|
|
|
|
|
|
Р |
|
|
|
|
|
|
|
И |
|
|
|
|
|
|
|
Т |
|
|
|
|
|
|
|
Е |
+ |
сложение |
- |
вычитание |
|
|
|
Т |
|
|
|
|
|
|
<< сдвиг влево >> сдвиг вправо
6
БИНАРНЫЕ ОПЕРАЦИИ.
Опера
ция
П
Р
И
О <
Р
И
Т
Е
Т
Описание |
Опера |
Описание |
Опера |
Описание |
Опера |
Описание |
|
ция |
|
ция |
|
ция |
|
меньше <= |
меньше или |
> |
больше >= |
больше или |
|
равно |
|
|
равно |
== равно != не равно
7
БИНАРНЫЕ ОПЕРАЦИИ.
Операция |
Описание |
П
Р
И
О
Р
И
Т
Е
Т
& |
поразрядная конъюнкция (И) |
^ |
поразрядное исключающее ИЛИ |
| |
поразрядная дизъюнкция (ИЛИ) |
&& |
логическое И |
|| |
логическое ИЛИ |
8
ТЕРНАРНАЯ ОПЕРАЦИЯ.
|
Операция |
Описание |
П |
|
|
Р |
|
|
И |
|
|
О |
|
|
Р |
|
|
И |
|
|
Т |
|
|
Е |
?: |
условная операция |
Т |
9
БИНАРНЫЕ ОПЕРАЦИИ.
Операция |
Описание |
= |
присваивание |
*= |
умножение с присваиванием |
/= |
деление с присваиванием |
%= |
остаток отделения с присваиванием |
+= |
сложение с присваиванием |
= |
вычитание с присваиванием |
<<= |
сдвиг влево с присваиванием |
>>= |
сдвиг вправо с присваиванием |
&= |
поразрядное И с присваиванием |
|= |
поразрядное ИЛИ с присваиванием |
^= |
поразрядное исключающее ИЛИ с присваиванием |
, |
последовательное вычисление |
Эти операции имеют самый низкий приоритет
10
Операции увеличения и уменьшения на 1 (++ и --).
•Эти операции, называются
инкрементом и декрементом
ОПЕРАЦИИ ++ И --.
Операции ++ и имеют две формы
записи:
•Префиксная операция записывается перед операндом
•Постфиксная операция записывается после операнда
В префиксной форме сначала изменяется операнд, а затем его значение становится результирующим значением выражения.
В постфиксной форме значением выражения является исходное значение операнда, после чего он изменяется.
Операндом операции инкремента в общем случае является
L-значение.
12