Тернарная операция
Лабораторна робота №2
Логічні вирази
Короткі теоретичні відомості
Арифметичні операції
Унарные:
& | получение адреса операнда |
* | обращение по адресу (разыменование) |
- | унарный минус, меняет знак арифметического операнда |
~ | поразрядное инвертирование внутреннего двоичного кода (побитовое отрицание) |
! | логическое отрицание (НЕ). В качестве логических значений используется 0 - ложь и не 0 - истина, отрицанием 0 будет 1, отрицанием любого ненулевого числа будет 0. |
++ | увеличение на единицу: префиксная операция - увеличивает операнд до его использования, постфиксная операция увеличивает операнд после его использования. |
- - | уменьшение на единицу: префиксная операция - уменьшает операнд до его использования, постфиксная операция уменьшает операнд после его использования. |
sizeof | вычисление размера (в байтах) для объекта того типа, который имеет операнд |
Бинарные операции.
Аддитивные:
+ | бинарный плюс (сложение арифметических операндов) |
- | бинарный минус (вычитание арифметических операндов) |
Мультипликативные:
* | умножение операндов арифметического типа |
/ | деление операндов арифметического типа (если операнды целочисленные, то выполняется целочисленное деление) |
% | получение остатка от деления целочисленных операндов |
Операции сдвига (определены только для целочисленных операндов)
<< | сдвиг влево битового представления значения левого целочисленного операнда на количество разрядов, равное значению правого операнда |
>> | сдвиг вправо битового представления значения правого целочисленного операнда на количество разрядов, равное значению правого операнда |
Поразрядные операции:
& | поразрядная конъюнкция (И) битовых представлений значений целочисленных операндов |
| | поразрядная дизъюнкция (ИЛИ) битовых представлений значений целочисленных операндов |
^ | поразрядное исключающее ИЛИ битовых представлений значений целочисленных операндов |
Операции сравнения:
< | меньше, чем |
> | больше, чем |
<= | меньше или равно |
>= | больше или равно |
== | равно |
!= | не равно |
Логические бинарные операции:
&& | конъюнкция (И) целочисленных операндов или отношений, целочисленный результат ложь(0) или истина(1) |
|| | дизъюнкция (ИЛИ) целочисленных операндов или отношений, целочисленный результат ложь(0) или истина(1) |
Тернарная операция
Тернарная операция имеет 3 аргумента и возвращает свой второй или третий операнд в зависимости от значения логического выражения, заданного первым операндом. Синтаксис тернарной операции
условие ? выражение1 : выражение2;
Если выполняется условие, то тернарная операция возвращает выражение1, в противном случае - выражение2.
Пример
key == 1 ? printf("\n Выбран первый пункт") :
printf("\n Первый пункт не выбран") ;
Тернарные операции, как и операции условия, могут быть вложенными.
key == 1 ? printf("\n Выбран первый пункт") :
( key == 2 ? printf("\n Выбран второй пункт") :
printf("\n Первый и второй пункты не выбраны") ) ;