Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
shpory_po_poryadku_proga.doc
Скачиваний:
4
Добавлен:
15.04.2019
Размер:
1.07 Mб
Скачать

1.1 Арифметические операторы.

Основные арифметические операторы: сложения, вычитания, умножения, деления. В языке С++ применяются для представления арифметических действий. В С++ нет оператора возведения в степень.

+ (сложение): +x, x+y - (вычитание): -x, x-y * (умножение): x*y / (деление): x/y % ( остаток от деления): x%y

Существуют префиксные и постфиксные  операторы. Префиксные (до) указывают C++ сначала увеличить (или уменьшить) значение переменной, а затем использовать это значение. Постфиксные (после) указывают C++ сначала использовать значение переменной, а затем увеличить (или уменьшить) его.

1.2. Побитовые операторы. К побитовым, или поразрядным операторам относятся: операторы поразрядного И (побитовое умножение) &; операторы поразрядного ИЛИ (побитовое сложение) |; операторы поразрядного исключающего ИЛИ ^; унарный оператор поразрядного отрицания ~ . оператор сдвига влево <<; оператор сдвига вправо >>;

Операнды поразрядных операций могут быть любого целого типа.

Оператор & часто используется для маскирования некоторого множества битов.

Оператор | используется для включения битов

Используя оператор ^ можно обменять значения двух переменных, не используя третью: x=x^y, y=x^y, x=x^y

Оператор << (сдвиг влево) выполняет побитовый сдвиг влево левого операнда на количество разрядов, соответствующее значению правого операнда. Сдвиг на 1 бит эквивалентный умножению на 2. Результатом является целое число.

Оператор >> (сдвиг вправо): выполняет побитовый сдвиг вправо левого операнда на количество разрядов, соответствующее значению правого операнда. Если число без знака, то левые биты = 0. Сдвиг на 1 бит эквиалентный делению на 2. Результатом является целое число.

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

1.3. Логические операторы

В качестве операндов выступают логические значения, результат – тоже логическое значение ! (отрицание)

|| (логическое “или”) && (логическое “и”)

1.4. Операторы сравнения (отношения). Любое значение, не равное нулю, - истина. Если тождественно равное нулю – ложь.Операторы сравнения и логические операторы не изменяют значения своих операндов, а только вычисляют значение: 0 (false), 1 (true).

Сравнивать можно операнды любого типа, но

либо они должны быть оба одного и того же встроенного типа (сравнение на равенство и неравенство работает для двух величин любого типа), либо между ними должна быть определена соответствующая операция сравнения.

Результат – логическое значение true или false.

1.5. Приоритет операторов определяется круглыми скобками. В противном случае предполагается, что операторы имеют следующие относительные приоритеты.

! -(изменение знака) + + + - -(унарные) * / % + - << >> < <= > >=        = = != & ^ |

&& || ? : (условный оператор)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]