Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

Операторы в С++

Оператор — это символ, который указывает компилятору выполнять определенные математические или логические манипуляции. C++ богат встроенными операторами и предоставляет следующие типы операторов —

В этой главе будут рассмотрены арифметические, реляционные, логические, побитовые, присваивания и другие операторы один за другим.

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

Существуют следующие арифметические операторы, поддерживаемые языком C++ —

Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда −

Показать примеры

Оператор Описание Пример
+ Добавляет два операнда A + B даст 30
- Вычитает второй операнд из первого A - B даст -10
* Умножает оба операнда A * B даст 200
/ Делит числитель на знаменатель B/A даст 2
% Оператор модуля и остаток после целочисленного деления B % A даст 0
++ Оператор приращения, увеличивает целочисленное значение на единицу A++ даст 11
-- Оператор декремента, уменьшает целочисленное значение на единицу A-- даст 9

Операторы отношения

Язык C++ поддерживает следующие реляционные операторы

Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда −

Показать примеры

Оператор Описание Пример
== Проверяет, равны ли значения двух операндов, если да, то условие становится истинным. (A ==B) неверно.
!= Проверяет, равны ли значения двух операндов, если значения не равны, то условие становится истинным. (A !=B) верно.
> Проверяет, больше ли значение левого операнда, чем значение правого операнда, если да, то условие становится истинным. (A> B) неверно.
< Проверяет, меньше ли значение левого операнда значения правого операнда, если да, то условие становится истинным. (A
>= Проверяет, больше ли значение левого операнда или равно значению правого операнда, если да, то условие становится истинным. (A>=B) неверно.
<= Проверяет, меньше ли значение левого операнда или равно значению правого операнда, если да, то условие становится истинным. (A <=B) верно.

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

Язык C++ поддерживает следующие логические операторы.

Предположим, что переменная A содержит 1, а переменная B содержит 0, тогда −

Показать примеры

Оператор Описание Пример
&& Вызывается оператор логического И. Если оба операнда отличны от нуля, условие становится истинным. (A &&B) ложно.
|| Вызывается оператор логического ИЛИ. Если любой из двух операндов отличен от нуля, условие становится истинным. (A || B) верно.
! Вызывается оператор логического НЕ. Используйте, чтобы изменить логическое состояние своего операнда на противоположное. Если условие истинно, то логический оператор НЕ сделает ложным. !(A &&B) верно.

Побитовые операторы

Побитовый оператор работает с битами и выполняет побитовые операции. Таблицы истинности для &, | и ^ следующие:

<тд>0 <тд>0 <тд>0 <тд>0 <тд>1 <тд>0 <тд>1 <тд>1 <тд>1 <тд>1 <тд>1 <тд>0 <тд>0 <тд>0 <тд>1 <тд>1
p q p &q p | д p ^ q
0
0
1
1

Предположим, если А =60; и В =13; теперь в бинарном формате они будут такими -

А =0011 1100

Б =0000 1101

------------------

А&В =0000 1100

А|В =0011 1101

А^В =0011 0001

~А =1100 0011

Побитовые операторы, поддерживаемые языком C++, перечислены в следующей таблице. Предположим, что переменная A содержит 60, а переменная B содержит 13, тогда −

Показать примеры

Оператор Описание Пример
& Двоичный оператор AND копирует бит в результат, если он существует в обоих операндах. (A &B) даст 12, что равно 0000 1100
| Двоичный оператор ИЛИ копирует бит, если он существует в любом из операндов. (A | B) даст 61, что равно 0011 1101
^ Двоичный оператор XOR копирует бит, если он установлен в одном операнде, но не в обоих. (A ^ B) даст 49, что равно 0011 0001
~ Двоичный оператор дополнения к единице является унарным и имеет эффект "переворачивания" битов. (~A ) даст -61, что равно 1100 0011 в форме дополнения до 2 из-за двоичного числа со знаком.
< Двоичный оператор сдвига влево. Значение левого операнда сдвигается влево на количество битов, указанное правым операндом. A <<2 даст 240, что равно 1111 0000
>> Двоичный оператор сдвига вправо. Значение левого операнда сдвигается вправо на количество битов, указанное правым операндом. A>> 2 даст 15, что равно 0000 1111

Операторы присваивания

Существуют следующие операторы присваивания, поддерживаемые языком C++ —

Показать примеры

Оператор Описание Пример
= Простой оператор присваивания. Присваивает значения из правых операндов левому операнду. C =A + B назначит значение A + B в C
+= Добавить оператор присваивания AND. Он добавляет правый операнд к левому операнду и присваивает результат левому операнду. C +=A эквивалентно C =C + A
-= Оператор вычитания И присваивания. Он вычитает правый операнд из левого операнда и присваивает результат левому операнду. C -=A эквивалентно C =C - A
*= Оператор умножения И присваивания. Он умножает правый операнд на левый операнд и присваивает результат левому операнду. C *=A эквивалентно C =C * A
/= Операция деления И присваивания. Он делит левый операнд на правый операнд и присваивает результат левому операнду. C /=A эквивалентно C =C / A
%= Оператор присваивания модуля И. Он принимает модуль, используя два операнда, и присваивает результат левому операнду. C %=A эквивалентно C =C % A
<<= Сдвиг влево И оператор присваивания. C <<=2 совпадает с C =C <<2
>>= Сдвиг вправо И оператор присваивания. C>>=2 совпадает с C =C>> 2
&= Побитовый оператор присваивания И. C &=2 совпадает с C =C &2
^= Побитовое исключающее ИЛИ и оператор присваивания. C ^=2 совпадает с C =C ^ 2
|= Побитовое ИЛИ и оператор присваивания. C |=2 совпадает с C =C | 2

Разные операторы

В следующей таблице перечислены некоторые другие операторы, поддерживаемые C++.

<тд>

размер

Оператор sizeof возвращает размер переменной. Например, sizeof(a), где «a» — целое число, возвращает 4.

<тд>

Условие? Х :Д

Условный оператор (?). Если условие истинно, то оно возвращает значение X, в противном случае возвращает значение Y.

<тд>

,

Оператор запятой вызывает выполнение последовательности операций. Значением всего выражения с запятой является значение последнего выражения в списке, разделенном запятыми.

<тд>

<б>. (точка) и -> (стрелка)

Операторы-члены используются для ссылки на отдельные члены классов, структур и объединений.

<тд>

В ролях

Операторы приведения преобразуют один тип данных в другой. Например, int(2.2000) вернет 2.

<тд>

&

Оператор указателя &возвращает адрес переменной. Например &а; даст фактический адрес переменной.

<тд>

*

Оператор указателя * является указателем на переменную. Например *вар; будет указывать на переменную var.

Старший № Оператор и описание
1
2
3
4
5
6
7

Приоритет операторов в C++

Приоритет оператора определяет группировку терминов в выражении. Это влияет на то, как оценивается выражение. Некоторые операторы имеют более высокий приоритет, чем другие; например, оператор умножения имеет более высокий приоритет, чем оператор сложения -

Например х =7 + 3 * 2; здесь x присваивается 13, а не 20, потому что оператор * имеет более высокий приоритет, чем +, поэтому он сначала умножается на 3*2, а затем добавляется к 7.

Здесь операторы с наивысшим приоритетом отображаются в верхней части таблицы, а с наименьшим — в нижней. Внутри выражения операторы с более высоким приоритетом будут оцениваться первыми.

Показать примеры

<тд>+- <тд><<>> <тд>& <тд>^ <тд>| <тд>|| <тд>,
Категория Оператор Ассоциативность
Постфикс () [] -> . ++ - - Слева направо
Унарный +- ! ~ ++ - - (тип)* &sizeof Справа налево
Мультипликативный * / % Слева направо
Добавка Слева направо
Сдвиг Слева направо
Относительный <<=>>= Слева направо
Равенство ==!= Слева направо
Побитовое И Слева направо
Побитовое исключающее ИЛИ Слева направо
Побитовое ИЛИ Слева направо
Логическое И && Слева направо
Логическое ИЛИ Слева направо
Условное ?: Справа налево
Назначение =+=-=*=/=%=>>=<<=&=^=|= Справа налево
Запятая Слева направо

Язык C

  1. Операторы С#
  2. Типы данных С++
  3. Операторы С++
  4. С++ Комментарии
  5. Шаблоны классов С++
  6. Операторы программирования на C
  7. Операторы Python
  8. Операторы Java
  9. Операторы в C++ с примером:что такое, типы и программы
  10. С - Операторы