polevoi_cpp_2013_spring_lecture_02
.pdfСтруктурное и процедурное программирование
(с использованием C++)
Полевой Дмитрий Валерьевич к.т.н., доцент КиК
e-mail: oop.misis@gmail.com
Выражения
•операторы
•операнды
(литералы, переменные, вызовы, выражения)
• скобки
пример:
a = b * (d - c);
w = h * cos(alph - bett);
cout << (a + b) << “->” << f(c);
16.02.2013 |
2 |
Приоритеты
•определяются таблицей приоритетов (полезно ознакомиться)
•корректируются скобками
пример:
a = b * (d - c);
w = h * cos(alph - bett);
cout << (a + b) << “->” << f(c);
16.02.2013 |
3 |
Логические операторы
&& |
логическое И (AND) |
expr && expr |
|
|
|
|| |
логическое ИЛИ (OR) |
expr || expr |
|
|
|
! |
логическое НЕ |
!expr |
|
|
|
16.02.2013 |
4 |
Операторы сравнения
== |
равно |
expr == expr |
|
|
|
!= |
не равно |
expr != expr |
|
|
|
> |
больше |
expr > expr |
|
|
|
>= |
больше или равно |
expr >= expr |
|
|
|
< |
меньше |
expr < expr |
|
|
|
<= |
меньше или равно |
expr <= expr |
|
|
|
16.02.2013 |
5 |
Арифметические операторы
* |
умножение |
expr * expr |
|
|
|
/ |
деление |
expr / expr |
|
|
|
% |
остаток от деления |
expr % expr |
|
(деление по модулю) |
|
+ |
сложение (плюс) |
expr + expr |
|
|
|
- |
вычитание (минус) |
expr - expr |
|
|
|
16.02.2013 |
6 |
Присваивающие арифметические операторы
*= |
умножение и присваивание |
lvalue *= expr |
|
|
|
/= |
деление и присваивание |
lvalue /= expr |
|
|
|
%= |
остаток и присваивание |
lvalue %= expr |
|
|
|
+= |
сложенней присваивание |
lvalue += expr |
|
||
|
|
|
-= |
вычитание и присваивание |
lvalue -= expr |
|
|
|
16.02.2013 |
7 |
Побитовые операторы
• интегральные типы и перечисления
& |
И (AND) |
expr & expr |
|
|
|
| |
ИЛИ (OR) |
expr | expr |
|
|
|
^ |
исключающее ИЛИ (OR) |
expr ^ expr |
|
|
|
~ |
дополнение |
~expr |
|
|
|
<< |
сдвиг влево |
expr << expr |
|
|
|
>> |
сдвиг вправо |
expr >> expr |
|
|
|
16.02.2013 |
8 |
Присваивающие побитовые операторы
&= |
И (AND) |
lvalue |
&= expr |
|
|
|
|
|= |
ИЛИ (OR) |
lvalue |
|= expr |
|
|
|
|
^= |
исключающее ИЛИ (OR) |
lvalue |
^= expr |
|
|
|
|
<<= |
сдвиг влево |
lvalue |
<<= expr |
|
|
|
|
>>= |
сдвиг вправо |
lvalue |
>>= expr |
|
|
|
|
16.02.2013 |
9 |
Инкремент и декремент
•инкремент
++lvalue (возвращает новое значение) lvalue++ (возвращает старое значение)
•декремент
--lvalue (возвращает новое значение) lvalue-- (возвращает старое значение)
16.02.2013 |
10 |