Хороший вопрос о

ько что попробовал с этим кодом:

void swapBit(unsigned char* numbA, unsigned char* numbB, short bitPosition)//bitPosition 0-x
{
    unsigned char oneShift = 1 << bitPosition;

    unsigned char bitA = *numbA & oneShift;
    unsigned char bitB = *numbB & oneShift;

    if (bitA)
        *numbB |= bitA;
    else
        *numbB &= (~bitA ^ oneShift);

    if (bitB)
        *numbA |= bitB;
    else
        *numbA &= (~bitB ^ oneShift);
}

поменять местами биты x и a, но из-за if () я думаю, что есть что-то лучше

Также когда я вижу это:

*numbB &= (~bitA ^ oneShift);

Я действительно думаю, что есть более простой способ сделать это. Если у вас есть что-то для меня, я бы взял это :)

заранее спасибо

Ответы на вопрос(0)

Ваш ответ на вопрос