Тернарная операция
- 12
Лабораторна робота №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 Первый и второй пункты не выбраны") ) ;
- 12