Представьте себе: int full = static_cast (uint8_t_var); < /code>
что -то на самом деле происходит под капюшоном здесь? Если вы находитесь на машине с 64 -битными регистрами, я предполагаю, что более высокие биты uint8_t_var надежно будут все 0 с. Я полагаю, что отбрасывание потребует маскировки верхних битов для правильной работы поведения, но, возможно, есть что -то, что я не рассматривал, что требует маски верхних бит 8 -битной переменной.
Подробнее здесь: https://stackoverflow.com/questions/796 ... -work-in-c