Студенту >> Язык программирования Си


Логические операции

Логические операции служат для построения сложных условий, подобных приведенному в предыдущем параграфе. В языке Си определены следующие логические операции:

!       логическое отрицание    (одноместная),
&&      логическое "и"          (двуместная),
||      логическое "или"                (двуместная).

В отличие от битовых операций, логические операции выполняются не над битами, а над значениями операндов. Результаты логических операций определяются следующей таблицей:

Результаты логических операций

op1

op2

!op1

op1 && op2

op1 || op2

0

0

не 0 (1)

0

0

0

не 0 (1)

не 0 (1)

0

не 0 (1)

не 0 (1)

0

0

0

не 0 (1)

не 0 (1)

не 0 (1)

0

не 0 (1)

не 0 (1)

Логические операции выполняются слева направо, причем для двуместных операций второй операнд может не вычисляться, если значение первого операнда однозначно определяет значение операции. Это происходит в том случае, если первый операнд для && равен 0 (результат операции тоже 0) и если первый операнд для || не 0 (результат операции тоже не 0).

НАВЕРХ