导读:近期更新了《union_type_punning》的相关内容,包括《联合体实现类型转换安全吗?如何用联合体安全替代reinterpret_cast》。如果 union_type_punning 对你有帮助,请转发和分享本内容。知识因分享而拥有更大能量,感谢您成为这传播链条中的重要一环。
联合体实现类型转换安全吗?如何用联合体安全替代reinterpret_cast 把float的二进制位直接读成uint32_t,用联合体做类型双关常被当成reinterpret_cast的替代方案。但C和C++标准对联合体的态度并不一致,C明确允许匿名读写不同成员,C++直到C++20才给出受限的共栖支持,此前属于未定义行为。更麻烦的是,编译器开启严格别名优化后,通过指针强转访问不... 栏目:C/C++ 时间:08-11 union_type_punning reinterpret_cast strict_aliasing