Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Решенные оветы на теорию Си.docx
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
166.91 Кб
Скачать

8. Операторы. Классификация операторов. Приоритеты операторов и порядок их выполнения.

Оператор – конструкция, которая вызывает выполнение действия. Знак оператора - это символ или группа символов, которые сообщают компилятору о необходимости выполнения определенных арифметических, логических или других действий.

Приоритеты и значения:

Таблица 4.4. Приоритеты операций (снизу вверх)

Оператор

Значение

Использование

::

Глобальная область видимости

::name

::

Область видимости класса

class::name

::

Область видимости пространства имен

namespace::name

.

Доступ к члену

object.member

->

Доступ к члену по указателю

pointer->member

[]

Взятие индекса

variable[expr]

()

Вызов функции

name(expr_list)

()

Построение значения

type(expr_list)

++

постфиксный инкремент

lvalue++

--

постфиксный декремент

lvalue--

typeid

идентификатор типа

typeid(type)

typeid

идентификатор типа выражения

typeid(expr)

преобразование типа

const_cast<type>(expr)

преобразование типа

dynamic_cast<type>(expr)

reinterpret_cast

приведение типа

reinterpret_cast<type> (expr)

static_cast

приведение типа

static_cast<type>(expr)

sizeof

размер объекта

sizeof expr

sizeof

размер типа

sizeof( type)

++

префиксный инкремент

++lvalue

--

префиксный декремент

--lvalue

~

побитовое НЕ

~expr

!

логическое НЕ

!expr

-

унарный минус

-expr

+

унарный плюс

+expr

*

разыменование

*expr

&

адрес

&expr

()

приведение типа

(type)expr

new

выделение памяти

new type

new

выделение памяти и инициализация

new type(exprlist)

new

Выделение памяти под массив

все формы

delete

освобождение памяти

все формы

delete

освобождение памяти из-под массива

все формы

->*

доступ к члену классу по указателю

pointer-> *pointer_to_member

.*

доступ к члену класса по указателю

object.*pointer_to_member

*

Умножение

expr * expr

/

Деление

expr / expr

%

деление по модулю

expr % expr

+

сложение

expr + expr

-

вычитание

expr - expr

<<

сдвиг влево

expr << expr

>>

сдвиг вправо

expr >> expr

<

меньше

expr < expr

<=

меньше или равно

expr <= expr

>

больше

expr > expr

>=

больше или равно

expr >= expr

==

равно

expr == expr

!=

не равно

expr != expr

&

побитовое И

expr & expr

^

побитовое ИСКЛЮЧАЮЩЕЕ ИЛИ

expr ^ expr

|

побитовое ИЛИ

expr | expr

&&

логическое И

expr && expr

||

логическое ИЛИ

expr || expr

?:

условный оператор

expr ? expr * expr

=

присваивание

l-значение = expr

=, *=, /=, %=, +=, -=, <<=, >>=, &=, |=, ^=

составное присваивание

l-значение += expr и т.д.

throw

возбуждение исключения

throw expr

,

запятая

expr, expr