Мои Конспекты
Главная | Обратная связь

...

Автомобили
Астрономия
Биология
География
Дом и сад
Другие языки
Другое
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Металлургия
Механика
Образование
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Туризм
Физика
Философия
Финансы
Химия
Черчение
Экология
Экономика
Электроника

Операции, выражения и операторы





Помощь в ✍️ написании работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Понятие выражения, как и понятие переменной, заимствовано из алгебры. Выражение - это группа символов, представляющее некоторое значение. Оно может содержать числа, символы для математических действий, такие как сложение или деление, и даже имена переменных. Например, выражение

(4 х 5) - 4 представляет значение 16.

Почленная интерпретация этого выражения - "взять число 4, умножить его на 5, из результата вычесть 4".

В языке С существует три типа выражений:

- математическое выражение, дающее численный результат;

- текстовое выражение, дающее строку символов;

- логическое выражение, дающее в результате 1 или 0 (интерпретируемые как "истина" или "ложь".

В зависимости от количества операндов различают унарные (один операнд), бинарные (два операнда) и тренарные (три операнда).

Унарные операции:

Операция Описание Пример
& Получение адреса операнда int MyVal = 1024; int *pint; pint = &MyVal; *pint = *pint + 1; cout << MyVal;
* Обращение по адресу к значению (разыменование)
- Унарный минус – изменение знака арифметического операнда Изменение знака арифметического операнда
+ Унарный плюс Введен для симметрии с унарным минусом
~ Поразрядное инвертирование внутреннего двоичного кода unsigned short i; (0 ... 65 535); i=10; i=~i; cout << i;
! Логическое отрицание значения операнда  
++ Инкремент (префиксный или постфиксный)  
-- Декремент (префиксный или постфиксный)  
sizeof Вычисление размера в байтах  
:: Операция доступа  

 

Бинарные операции:

Операция Описание операции
Арифметические операции
+ Сложение
- Вычитание
* Умножение
/ Деление
% Получение остатка от деления целочисленных операндов
Операции отношения (сравнения)
< Меньше
> Больше
<= Меньше или равно
>= Больше или равно
= = Равно
!= Не равно
Логические бинарные операции
&& Конъюнкция (И)
| | Дизъюнкция (ИЛИ)
Операции присваивания
= Простое присваивание
*= Присваивание произведения значений операндов
/= Присваивание частного от деления значений операндов
%= Присваивание остатка от деления значений операндов
+= Присваивание суммы значений операндов
-= Присваивание разности значений операндов
Операции сдвига
<< Левый сдвиг
>> Правый сдвиг
Поразрядные операции
& Поразрядная конъюнкция битовых представлений значений целочисленных операндов
| Поразрядная дизъюнкция -//-
^ Поразрядная исключающая дизъюнкция -//-

 

Деление целых чисел дает в результате целое число. Дробная часть результата, если она есть, отбрасывается:

 

int MyVal1 = 21 / 6;

int MyVal2 = 21 / 7;

И MyVal1, и MyVal2 в итоге получат значение 3.

Один нюанс, который вы должны запомнить.

float res;

res = 5/4;

Результат: res = 1.

Для того, чтобы посчитать "правильно", этот фрагмент программы должен быть

float res;

res = 5./4.;

Результат: res = 1.25.

 

 

Результат получения остатка от деления целочисленных операндов положителен, если оба операнда положительны. Если же один или оба операнда отрицательны, результат зависит от реализации, то есть машинно-зависим.

Значением операции сдвига является битовое представление левого операнда, сдвинутое влево (<<) или вправо (>>) на количество разрядов, равное значению правого операнда.

При левом сдвиге на i разрядов первые i разрядов левого операнда теряются, последние i разрядов левого операнда заполняются нулями.

При правом сдвиге на i разрядов первые i разрядов левого операнда заполняются нулями, если левый операнд имеет беззнаковый тип или имеет неотрицательное значение, в противном случае значение определяется реализацией. Последние i разрядов левого операнда теряются.

 

Доверь свою работу ✍️ кандидату наук!
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой



Поиск по сайту:







©2015-2020 mykonspekts.ru Все права принадлежат авторам размещенных материалов.