unsigned char как байтовое число

192
02 сентября 2018, 23:20

На MSDN указано, что в C++ никогда не было типа byte и вместо него следует использовать тип unsigned char. Но при попытке вывести такое значение

void func(char b) {
    cout << b;
}
func(20);

вижу не совсем то, что нужно

Есть ли какая-то нормальная человеческая возможность работать с однобайтовыми числами или каждый раз придется преобразовывать в int?

Answer 1

При печати можно выполнить приведение типа, тогда выведется число вместо символа:

std::cout << static_cast<int>(b) << std::endl;

Либо можно использовать функцию printf

printf("%d",b);
READ ALSO
minGW для qt на windows 64-bit(и не только)

minGW для qt на windows 64-bit(и не только)

Я сейчас второй раз устанавливаю qtИ так как в первый раз я не понял что minGW можно скачать с qt,я решил переустановить qt чтобы вместе с ним получить...

203
Почему нельзя объявить constexpr D3DXVECTOR3?

Почему нельзя объявить constexpr D3DXVECTOR3?

Почему вот так: constexpr RECT DefaultRS = { 0,0,180,52 }; Можно, а вот так constexpr D3DXVECTOR3 DefaultCenter = { 0,0,0 }; нельзя?

210
Как вернуть std::unique_ptr из контейнера

Как вернуть std::unique_ptr из контейнера

У меня есть stl или boost контейнер хранящий std::unique_ptrКак известно std::unique_ptr поддерживают только move симатику в связи с чем возникает вопрос, как...

233