Compound Operators
++ (инкремент) / -- (декремент)
Описание:
Инкрементирует или декрементирует переменную
Синтаксис:
x++; // инкрементирует x на один и Возвращает: старое значение x
++x; // инкрементирует x на один и Возвращает: новое значение x
x-- ; // декрементирует x на один и Возвращает: старое значение x
--x ; // декрементирует x на один и Возвращает: новое значение x
Параметры:
x: int или long (возможно unsigned)
Возвращает:
Оригинальное или инкрементированное/декрементированное значение переменной.
Пример:
x = 2;
y = ++x; // x теперь равен 3, y равен 3
y = x--; // x снова равен 2, y еще равен 3
+= , -= , *= , /=
Описание:
совершает математические действие над переменной и другой переменной или константой.
Синтаксис:
x += y; // эквивалентно выражению x = x + y;
x -= y; // эквивалентно выражению x = x - y;
x *= y; // эквивалентно выражению x = x * y;
x /= y; // эквивалентно выражению x = x / y;
Параметры:
x: либой тип переменной
y: любой тип переменной или константа
Пример:
x = 2;
x += 4; // x теперь равно 6
x -= 3; // x теперь равно 3
x *= 10; // x теперь равно 30
Побитовое И (&=), Побитовое ИЛИ (|=)
Битовые операторы позволяют производить вычисления на битовом уровне переменных. Они часто используются для сброса или установки определенных бит переменной. Аналогичны операторам Bitwise AND (&), Bitwise OR (|), Bitwise XOR (^) и отличаются лишь укороченным синтаксисом.
Побитовое И (&=)
Описание:
Оператор битовое И (&=) часто используется вместе с переменной или константой для сброса определенных битв нулевое состояние. В программировании это частенько называется сбросом битов.
Синтаксис:
x &= y; // эквивалентно x = x & y;
Параметры:
x: char, int или long
y: целочислительная константа или char, int, or long
Пример:
Для начала разберем оператор побитовое И (&)
0 0 1 1 операнд 1
0 1 0 1 операнд 2
----------
0 0 0 1 (операнд1 & операнд2) - возвращаемый результат
переменная побитово умноженная на 0 обнулится
myByte & B00000000 = 0;
переменная побитово умноженная на 1 останется исходной,
myByte & B11111111 = myByte;
Примечание: Приченяя пободные операторы удобно форматировать переменные с константами используя маску.
например: побитовое И (&=) с константой B11111100
1 0 1 0 1 0 1 0 переменная
1 1 1 1 1 1 0 0 маска
----------------------
1 0 1 0 1 0 0 0
x x x x x x x x переменная
1 1 1 1 1 1 0 0 маска
----------------------
x x x x x x 0 0
собственно:
myByte = 10101010;
myByte &= B1111100 == B10101000;
Побитовое ИЛИ (|=)
Описание:
Побитовое ИЛИ часто используется длу установки определенных битов в переменной.
Синтаксис::
x |= y; // эквивалентно x = x | y;
Параметры:
x: char, int или long переменные
y: целочислительные константы или char, int, long
Пример:
Рассмотрим работу оператора побитовое ИЛИ (|)
0 0 1 1 операнд1
0 1 0 1 операнд2
----------
0 1 1 1 (операнд1 | операнд2) - возвращаемый результат
Биты побитово сложенные с 0 не будут изменены, например:
myByte | B00000000 = myByte;
Биты, побитово сложенные с 1 будут установлены в 1:
myByte & B11111111 = B11111111;
Таким образом, используя маску можно устанвливать часть переменной неименяемой, например:
побитовое ИЛИ(&=) с константой B00000011
1 0 1 0 1 0 1 0 переменная
0 0 0 0 0 0 1 1 маска
----------------------
1 0 1 0 1 0 1 1
x x x x x x x x переменная
0 0 0 0 0 0 1 1 маска
----------------------
x x x x x x 1 1
Дата добавления: 2015-03-23; просмотров: 1097;