标签: c++ c++11
是否认为C ++中的uint8_t值和int8_t值之间的强制转换是未定义的行为? 例如,考虑以下代码:
std::uint8_t x = 255; std::int8_t y = static_cast<int8_t>(x);
此转换的目标是将值11111111(即x = 255)解释为二进制补码表示形式(即y = -1)。这在C ++中有效还是被视为未定义行为?