Этот оператор является бинарным, переносит все биты на заданное количество позиций влево, при этом освобождающие позиции справа заполняются нулями, а слева исчезают. Первый операнд — изменяемая целочисленная переменная, а второй — целочисленная переменная, задающая величину сдвига.
В двоичной системе счисления сдвиг бита на одну позицию влево эквивалентен умножению на 2.
Чуть подробней: 4 << 1
00000000000000000000000000000100
00000000000000000000000000000100
00000000000000000000000000001000
В двоичной системе счисления сдвиг бита на одну позицию влево эквивалентен умножению на 2.
Чуть подробней: 4 << 1
00000000000000000000000000000100
00000000000000000000000000000100
00000000000000000000000000001000
Main.cs
usingSystem;classProgram {-
publicstaticintMain() { -
intval = 4; -
val = val << 1; -
Console.WriteLine(val); -
Console.ReadKey(); -
return0; -
} }
usingSystem;classProgram {-
publicstaticintMain() { -
intval = 4; -
val = val << 1; -
Console.WriteLine(val); -
Console.ReadKey(); -
return0; -
} }
8