Другие языки программирования и технологии

Зачем в c# нужен оператор ^ (OR)? В чем различие от ||?

Не знаю, как в c#, в Си -- это побитовый оператор XOR -- исключительное или. Сравнивается каждый бит двух переменных, если у одной переменной 1, а у другой 0, то в новую переменную записывется 1, если 1 и 1 или 0 и 0, то записывается 0.
Сергей Сылкин
Сергей Сылкин
18 519
Лучший ответ
Александр Колосов Спасибо, теперь понял.
Оператор ^ называется исключающим ИЛИ XOR а оператор OR обозначается одной трубой |. && || ! это логические операторы для проверки нескольких условий. А ^ | & это поразрядные операторы они работают ток с 32 битными данными это на сколько я знаю и помню. Например 5 | 14 даст ответ 15. Работает это так число 5 преобразуется в двоичный формат 101 а число 14 в 1110 начиная с самого младшего разряда с правой стороны делается проверка 1 или 0 он всегда возвращает true если хотя бы один из его операндов является true поэтому вернет 1 чтоб понять всё это нужно записать в столбик как в школе учили тебя складывать в столбик точно также оператор ИЛИ работает как логическое сложение, теперь вычисляем следующий разряд 0 или 1 получаем 1 в итоге получилось 11 1 или 1 получаем 1 получилось 111 и последнюю единицу просто сносим вниз и получаем 1111 если перевести эту двоичную систему в десятичную то получится число 15. Возможно я объяснил как то криво но в интернете об этом есть достаточно информации там можешь почитать. В ближайшие время тебе эти операторы даже не понадобятся, но всё же их используют при решении некоторых задач например для создания шифрования, для определения прав доступа модератор, администратор что-то вроде этого.
Igor Bilogurskyj
Igor Bilogurskyj
2 396
Александр Астахов "они работают ток с 32 битными данными"
Нет, они работают со всеми целыми типами.
Побитовая операция