Существует ли эквивалентный побитовый оператор для =?

#c

#c

Вопрос:

Мне просто было интересно, есть ли что-то вроде =, но с побитовым вместо этого это просто из любопытства, потому что у меня скоро появится подобный проект

например, что бы это было

 a  = b

  

Комментарии:

1. Не могли бы вы пояснить, что вы подразумеваете под «побитовым»?

2. Все бинарные операторы можно комбинировать с = . a op= b эквивалентно a = a op b

3. 1-разрядная таблица сложения такая же, как XOR .

4. Для ясности, вас просили реализовать operator = , используя только побитовые операторы?

5. если бы кто-нибудь попросил меня заменить эту операцию побитовой операцией, мой ответ был бы: «Что вы имеете в виду?» это именно то, о чем мы вас спрашиваем

Ответ №1:

если вы хотите добавить, используя только побитовые логические операторы:

 #include <stdio.h>

int addb(int a, int b)
{
    while (b)
    {
        int c = a amp; b;
        a = a ^ b; 
        b = c << 1;
    }
    return a;
}

int main(void)
{
    printf("%dn", addb(5,8));
    printf("%dn", addb(5,-2));
}