Операции отношения используются для сравнения величин.
< меньше
<= меньше или равно
> больше
>= больше или равно
= = равно
!= неравно.
Операции отношения используются в условных выражениях. Каждое условное выражение проверяется истинно (trul) оно или ложно (false).
Результатом логического выражения является целочисленное арифметическое значение. Истина не нулевое значение, а нулевое - ложь. Все операции типа больше-меньше имеют равный приоритет, причем он больше, чем приоритет операций = = и ! =.
Приоритет операции присваивания ниже приоритета всех операций отношения.
Логические операции
&& логическое и (AND)
| | логическое или (OR)
! логическое не (NOT) .
Результаты выполнения этой операции
AND
OR
NOT
X
Y
X&&Y
X| |Y
!X
Аргументами логической операции могут быть любые числа или выражения. Результатом логической операции является значение
1 если истина
0 если ложь.
Логические операции имеют низкий приоритет, поэтому скобки используются редко.
Если -1<x<2,то на языке С это означает x >-1 && x<2.
Особенность логической операции && и || состоит в том, что при вычислении операции <выражение 1> && <выражение 2> значение 1 операнда будет нулевым, то значение 2 операнда не вычисляется, т.к. его значение не оказывает никакого влияния на результат операции &&.
При вычислении операции <выражение 1> || <выражение 2> второй операнд не вычисляется, если первый равен 1.
Пример:
Если x<-1 или x>2, то на языке С это означает x<-1 || x>2. Если x= -2, то 1 выражение истинно, то результат тоже истина.
К операциям присваивания относятся:
=, + =, - =, * =, / =, % =.
Все операции присваивания присваивают переменной результат вычисления выражения. Если тип левой части присваивания отличается от типа правой части, то тип правой части приводится к типу левой части. В одном операторе присваивания операция присваивания может встречаться несколько раз.
Например: a=(b=c)*d
Вычисления производятся справа налево. Сначало переменной b присваивается значение c, а затем выполняется операция умножения на d, и результат присваивания переменной a.
Если a+ =b это означает a=a+b
a- =b это означает a=a-b
a*=b это означает a=a*b
a/=b это означает a=a/b
a%=b это означает a=a%b.
Эти операции имеют тот же приоритет, что и операции присваивания. Но a+=b выполняется быстрее, чем a=a+b.