gcc警告: warning: dereferencing type-punned pointer will break strict-aliasing rules

Q:

在高优化级别下,不同类型指针之间的强制类型转换可能会触发以下警告:

warning: dereferencing type-punned pointer will break strict-aliasing rules

A:

在高优化级别下,gcc假定不同类型指针不会指向同一片内存,以加强优化,从而可能导致编译出不符合原意的代码。

使用-fno-strict-aliasing,关闭在此类代码上的优化。

上一篇:LeetCode 201. 数字范围按位与


下一篇:最小割最大流定理&残量网络的性质