- •1.Назначение алгоритмических языков программирования. Круг решаемых задач.
- •2. Понятие типов данных. Представление о двоичной арифметике. Базовые типы данных
- •3. Описатели базовых типов данных языка Си. Перечислите все стандартные описатели
- •4. Переменные в Си: назначение, допустимые имена, описание и инициализация. Различие
- •Переменные и константы
- •5. Операции в Си: назначение и отличия от операндов, операторов, выражений и функций.
5. Операции в Си: назначение и отличия от операндов, операторов, выражений и функций.
Понятие об унарных, бинарных и тернарных операциях. Перечислите принадлежащие к
каждому из этих типов операции
Операции делятся на унарные, бинарные и тернарную по количеству участвующих в них операндов. Большинство стандартных операций может быть переопределено (перегружено).
Операции делятся по количеству принимаемых аргументов на: унарные — один аргумент (отрицание, унарный минус) бинарные — два аргумента (сложение, вычитание, умножение и т.д.) тернарные — три аргумента ("условие ? выражение1 : выражение2") Выражение с унарными операциями группируется справа налево.
Операция |
Краткое описание |
Унарные операции |
|
:: |
доступ к области видимости |
. |
выбор |
-> |
выбор |
[ ] |
индексация |
( ) |
вызов функции |
<тип>( ) |
конструирование |
++ |
постфиксный инкремент |
— |
постфиксный декремент |
typeid |
идентификация типа |
dynamic_cast |
преобразование типа с проверкой на этапе выполнения |
static_cast |
преобразование типа с проверкой на этапе компиляции |
reinterpret_cast |
преобразование типа без проверки |
const_cast |
константное преобразование типа |
sizeof |
размер объекта или типа |
— |
префиксный декремент |
++ |
префиксный инкремент |
~ |
поразрядное отрицание |
! |
логическое отрицание |
- |
арифметическое отрицание (унарный минус) |
+ |
унарный плюс |
& |
взятие адреса |
* |
разадресация |
new |
выделение памяти |
delete |
освобождение памяти |
(<тип>) |
преобразование типа |
.* |
выбор |
->* |
выбор |
Бинарные и тернарные операции |
|
* |
умножение |
/ |
деление |
% |
остаток от деления |
+ |
сложение |
- |
вычитание |
<< |
сдвиг влево |
>> |
сдвиг вправо |
< |
меньше |
<= |
меньше или равно |
> |
больше |
>= |
больше или равно |
== |
равно |
!= |
не равно |
& |
поразрядная конъюнкция (И) |
^ |
поразрядное исключающее ИЛИ |
| |
поразрядная дизъюнкция (ИЛИ) |
&& |
логическое И |
|| |
логическое ИЛИ |
? : |
условная операция (тернарная) |
= |
присваивание |
*= |
умножение с присваиванием |
/= |
деление с присваиванием |
%= |
остаток отделения с присваиванием |
+= |
сложение с присваиванием |
-= |
вычитание с присваиванием |
<<= |
сдвиг влево с присваиванием |
>>= |
сдвиг вправо с присваиванием |
&= |
поразрядное И с присваиванием |
|= |
поразрядное ИЛИ с присваиванием |
^= |
поразрядное исключающее ИЛИ с присваиванием |
throw |
исключение |
, |
последовательное вычисление |
