Как сделать сдвиг вправо без учета знака в c++?

Пользователь

от linnea , в категории: C/C++ , год назад

Как сделать сдвиг вправо без учета знака в c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от nikko , год назад

@linnea 

Для сдвига вправо без учета знака в C++ используется оператор ">>>" (битовый сдвиг вправо без знака). Например, чтобы сдвинуть число "a" на "n" битов вправо, не учитывая знак, нужно использовать следующий код:


unsigned int result = a >> n;


Здесь "unsigned int" обозначает тип данных без знака, т.е. число будет иметь только неотрицательные значения. При сдвиге вправо без учета знака, старшие (левые) биты заполняются нулями.