4

我正在使用 4.1.2。有人对我的代码中最好看的地方有任何想法吗?有常见原因的经验?我正在努力消除一些丑陋的指针转换(即 d = (double) (* (float *) p),其中 p 是指向 int 的指针),但还没有运气。
对于它的价值,-O0 给出了正确的答案。谢谢你的帮助。

4

2 回答 2

7

我会检查严格的别名问题,如下所示: http ://www.cellperformance.com/mike_acton/2006/06/understanding_strict_aliasing.html

在不确切知道您的代码做什么的情况下,提到“丑陋的指针强制转换”让我怀疑有别名问题。

如果您提供了一些演示该问题的代码,这将对您有所帮助,并使我们更容易回答。

于 2009-07-02T02:48:25.313 回答
3

谢谢大家,-fno-strict-aliasing(由几个人建议)解决了我的问题。感谢你的帮助。
经验教训:始终使用警告标志进行编译。

于 2009-07-02T03:01:47.017 回答