Лабораторная работа: Операции языка Cи

int x=5;

printf(“%d”, x + ::x); // 7

}

5. Операция “точка” используется с структурными переменными и над объектами классов. Например,

Pixel A;

А.x = 100;

6. В языке Си нет логических констант true и false. Вместо этого все, что не ноль считается истинным, а ноль любого типа считается ложью. При этом представителем истины является 1.

Таблица 2.

Таблица истинности операции логического отрицания

x ноль не ноль
!x 1 0

7. Побитовое инвертирование применяется только к целым аргументам. Для получения результата аргумент необходимо преобразовать в двоичную систему счисления. Количество разрядов должно соответствовать типу аргумента.

Таблица3.

Таблица истинности

x 0 1
~x 1 0

Пример.

char x = 20, y;

y= ~x;

Так как х = 20 = 000101002, то y = 11101011. Переменная y является знаковой, поэтому ее содержимое компилятор будет интерпретировать как число со знаком, то есть отрицательное. Найдем это число из схемы

y = 11101011

+

-y = 00010101

= 00000000

Так как –y = 21, то y = -21.

8. Автоматический инкремент увеличивает аргумент на единицу. Применяется к любым типам. Операция ++x эквивалентна оператору x = x + 1, но занимает меньше места и удобнее в сложных выражениях. Отложенный инкремент x++ увеличивает аргумент на единицу при следующей встрече этой переменной. Не учитывается ее использование в строках и комментариях. Заметим, что название языка Си++ происходит от этой операции Автор Си++ Б.Страустрап видимо, предполагал, что этот язык на порядок лучше своего предшественника, языка Си.

9. Операция декремента аналогично уменьшает аргумент на единицу.

Пример. int x = 2, y = 4, z;

z = x++ + ++x + y-- + --y;

В результате x = 4, y = 2, z = 2 + 4 + 4 + 3 = 13.

10. Операция –x является стандартной, она не меняет значения x.

11. Операция +x лишена смысла.

12. Явное преобразование типа не меняет типа своего аргумента и влияет только на тип результата. Запись (int)2.1 вернет число 2. Используется, как правило, при работе с указателями. Для числовых констант применяется неявное преобразование типа.

К-во Просмотров: 482
Бесплатно скачать Лабораторная работа: Операции языка Cи