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

6) Операции языка с. Арифметические, логические операции. Поразрядные операции. (в1б6, в3б15)

Операция, применяемая к одному операнду, наз. унарной, операция с двумя операндами - бинарная.

1. Арифметические операции (+, -, *, /, ++ (операция инкремента-увеличения на 1), -- (операция дикремента- уменьшения на 1), % (деление по модулю- примен. к целым числам), остальные операции применимы к любым типам данных. Если делимое и делитель целые числа, то результат - целое число, если один из операндов вещественного типа, то результат - вещественный.

Операции инкремента и декремента применяются только к переменным (а++: постфиксная форма, ++а: префиксная). При использовании постфиксной формы операции инкремента и декремента выполняются после того, как значение переменной использовалось в выражении, а при префиксной форме - до использования выражения.

2. Логические операции : !-отрицание, &&-операция И (конъюнкция--И), I I-операция ИЛИ (дизъюнкция—ИЛИ).

В СИ имеются поразрядовые лог. операции (битовые): & (поразрядовая конъюнкция), I (поразрядовая дизъюнкция), ^ (исключающее ИЛИ), ~ ( поразрядовое отрицание).

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

Операция поразрядного логического И (&) сравнивает каждый бит первого операнда с соответствующим битом второго операнда. Если оба сравниваемых бита единицы, то соответствующий бит результата устанавливается в 1, в противном случае в 0.

Операция поразрядного логического ИЛИ (|) сравнивает каждый бит первого операнда с соответствующим битом второго операнда. Если любой (или оба) из сравниваемых битов равен 1, то соответствующий бит результата устанавливается в 1, в противном случае результирующий бит равен 0.

Операция поразрядного исключающего ИЛИ (^) сравнивает каждый бит первого операнда с соответствующими битами второго операнда. Если один из сравниваемых битов равен 0, а второй бит равен 1, то соответствующий бит результата устанавливается в 1, в противном случае, т.е. когда

оба бита равны 1 или 0, бит результата устанавливается в 0.

3. Операции поразрядового сдвига. Выполняются с помощью перевода операнда в двоичную систему счисления, >> (поразрядовый сдвиг вправо), << (сдвиг влево).

7. Операции языка с. Операция присваивания и отношения. Операция определения размера. Оператор последовательного вычисления. (в1б7, в2б30)

1.Операции отношений: > (больше), < (меньше) , >=(больше или равно), <= (меньше или равно), == (проверка на равенство), != (проверка на неравенство). Результат операции отношения явл-ся: 1 (истинно-true) и 0 (ложно-false).

Все операции типа «меньше-больше» имеет равные приоритеты, причем он выше, чем приоритет операций ==, !=. приоритет операций присвоения ниже приоритета всех операций отношений. Для задания правильного порядка вычислений исп. скобки.

2. Операция присваивания. В языке СИ присваивание-это операция, а не операнд, значит, может несколько раз входить в выражение (а=в=с).

К ним относятся: +=, -=, *=, /=, а также префиксные и постфиксные операции ++, --.

Все операции присвоения присваивают переменный результат вычисления выражения. Если тип левой части присваивания отличается от типа правой части, то он присваивается к типу левой части.

Пример: а=(в=с)*д

Операции +=, -=, *=, /= явл. укороченной формой записи операции присваивания.

Пример: а+=в означает а=а+в

Префиксные и постфиксные операции ++ и -- исп. Для увеличения и уменьшения но единицу значения переменной.

++а - увеличивает значение переменной а на единицу до использования этой переменной в выражении.

а++ - увеличивает значение переменной а на единицу после использования этой переменной в выражении.

--а - уменьшает значение переменной а на единицу до использования этой переменной в выражении.

а-- - уменьшает значение переменной а на единицу после использования этой переменной в выражении.

3. Операция определения размера (sizeof).

Sizeof (тип) или sizeof (выражение). Результат операции - целое число равное количеству байт в памяти, кот-е занимает полученная величина в результате вычисления.

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

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