Я должен написать функцию c ++, которая заменяет n-й и младший значащий бит на int. Я нашел несколько примеров и сделал это:
v1 = v1 ^ ((((v1&1) ^ (v1>>n)&1) << LSBpos) | (((v1&1) ^ (v1>>n)&1) << n));
cout<<v1;
v1 - int. v1 & 1 - это значение LSB. LSBpos должен быть позицией LSB, но я не знаю, как его получить. Есть объяснения того, как получить позицию LSB, которая установлена или очищена, но мне просто нужна эта позиция, независимо от того, установлена она или нет.