Бинарные литералыC++

Программы на C++. Форум разработчиков
Anonymous
Бинарные литералы

Сообщение Anonymous »

В коде я иногда вижу, как люди указывают константы в шестнадцатеричном формате, как это: < /p>

Код: Выделить всё

const int has_nukes        = 0x0001;
const int has_bio_weapons  = 0x0002;
const int has_chem_weapons = 0x0004;
// ...
int arsenal = has_nukes | has_bio_weapons | has_chem_weapons; // All of them
if(arsenal &= has_bio_weapons) {
std::cout 
Но для меня не имеет смысла использовать шестнадцатеричный формат здесь. Есть ли способ сделать это непосредственно в бинарном? Что -то вроде этого: < /p>
const int has_nukes        = 0b00000000000000000000000000000001;
const int has_bio_weapons  = 0b00000000000000000000000000000010;
const int has_chem_weapons = 0b00000000000000000000000000000100;
// ...
Я знаю, что компиляторы C/C ++ не будут компилировать это, но есть ли обходной путь? Возможно ли на других языках, таких как Java?

Подробнее здесь: https://stackoverflow.com/questions/537 ... y-literals

Вернуться в «C++»