Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 13.04.2019
Сообщений: 28
1

Оператор ^

03.07.2019, 15:40. Показов 1165. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Что делает оператор '^'? Я не могу найти информацию про него в интернете, поэкперементировавши я понял, что он отнимает код второго символа от первого - это в случае если код первого символа больше по значению, чем у второго. В случае, когда символы равны он возвращает нулевой символ. А вот принцип работы в случае, если первый код символа меньше второго,я не понял. Как оно работает? И для чего он? ЭТО ЧТО СЕКРЕТНАЯ ИНФОРМАЦИЯ?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.07.2019, 15:40
Ответы с готовыми решениями:

Написать программу, содержащую оператор оператор for для счета от 2 до 5 через 1
В С++ я ноль, помогите пожалуйста написать прогу Написать программу, содержащую оператор...

Условный оператор, оператор ввода/вывода; плоскость и принадлежность точки
Здравствуйте. В С++ я абсолютный новичок, поэтому с первым же заданием возникли определённые...

Для шаблонного класса перегрузить оператор присваивания, copy-конструктор, объекты cin и cout, оператор *
Помогите в следующем: Для класса шаблона следует перегрузить оператор присваивания, конструктор...

Для чего нужен оператор двоеточие, если два двоеточия - это оператор расширения области видимости
для чего нужен оператор двоеточие ( : ), если два двоеточия( :: ) - это оператор расширения области...

6
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
03.07.2019, 15:46 2
Лучший ответ Сообщение было отмечено SiBajev как решение

Решение

Цитата Сообщение от SiBajev Посмотреть сообщение
ЭТО ЧТО СЕКРЕТНАЯ ИНФОРМАЦИЯ?
Нет конечно, оператор ^ это оператор XOR, т.е. есть у тебя числа в двоичной системе: 1001 и 1010, на выходе ты получишь это число: 0011, т.к. там где числа разные, оно вернет еденицу, где одинаковые, ноль.

Это проще смотреть на булевых значениях, вот: true ^ true даст нам false, а false ^ true (или true ^ false) даст нам true т.е. значения разные, при проверке условии, этот оператор почти никогда не используется, его можно использовать только что бы получить только непарную истину т.е. 1,3,5,7.. выражений будут иметь true, к примеру любая проверка где будет ^ вернет true только тогда, когда из всех значения только одно истина, тут нам дадут true:
C++
1
false ^ false ^ false ^ false ^ true ^ false ^ false ^ false
а тут уже false:
C++
1
false ^ false ^ true^ false ^ true ^ false ^ false ^ false
а тут опять true:
C++
1
false ^ false ^ true^ false ^ true ^ false ^ true^ false
1
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
03.07.2019, 15:47 3
Цитата Сообщение от SiBajev Посмотреть сообщение
Что делает оператор '^'?
Это XOR
1 - когда биты не равны, 0 - когда равны
1
875 / 461 / 91
Регистрация: 10.06.2014
Сообщений: 2,669
03.07.2019, 15:50 4
SiBajev,
Не секретная ))
Это xor, есть например два байта по 8 бит каждый
01001011
10001011
Если между ними применить xor, то получится
11000000
То есть 01001011 ^ 10001011 = 11000000
В той паре битов где одна часть равна 1, а другая 0 ответом будет 1, во всех остальных случаях будет 0 и так для каждого бита.

Часто применяется в алгоритмах шифрования.
1
89 / 108 / 15
Регистрация: 26.01.2014
Сообщений: 689
03.07.2019, 17:36 5
Исключающее ИЛИ (оператор ^) применяет побитово операцию XOR. Например, для чисел
?
char a = 12;
char b = 85;
char c = a ^ b;
printf("%d", c);

будет выведено 89, так как a равно 00001100, а b равно 01010101. В итоге получим 01011001


И сам изрядный лентяй. Ленивей меня наверно только мой сытый Кот. Но это из Википедии по моему. Убедись ка сам. Твой Etien
0
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,737
Записей в блоге: 1
03.07.2019, 17:53 6
Цитата Сообщение от SiBajev Посмотреть сообщение
Я не могу найти информацию про него в интернете
У Вас какой-то свой Интернет?
Первая ссылка в гугле:
Оператор ^

Идем по ней, смотрим:
Оператор ^

Ух ты, операция называется "Побитовое исключающее ИЛИ". Гуглим:
Оператор ^

Первая же ссылка на википедию... хм... идем туда:
Оператор ^


Блин, точняк секретная операция, инфу не найти!
0
0 / 0 / 0
Регистрация: 13.04.2019
Сообщений: 28
03.07.2019, 23:36  [ТС] 7
Цитата Сообщение от Croessmah Посмотреть сообщение
Блин, точняк секретная операция, инфу не найти!
)) я просто думал что там я это не найду)
0
03.07.2019, 23:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.07.2019, 23:36
Помогаю со студенческими работами здесь

Почему обращение к методам осуществляется через оператор прямого доступа, а не через оператор указателей->?
#include <iostream> using namespace std; class random { public: void Set(int b){a=b;} int...

Применяя оператор цикла FOR вычислить y. Оператор if в теле цикла не использовать. Значение m и n вводить с клавиатуры.
Применяя оператор цикла FOR вычислить y. Оператор if в теле цикла не использовать. Значение m и n...

Оператор break как оператор go to next
Подскажите, в этом примере break эквивалентна действию оператора go to next?

Как перегрузить оператор<< и оператор>> ?
Доброго времени суток. Застрял на двух вопросах и не как не могу найти инфу которвя мне помогла бы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru