gpt4 book ai didi

C 中的编译时三角函数

转载 作者:太空狗 更新时间:2023-10-29 17:20:57 26 4
gpt4 key购买 nike

我目前的代码看起来像

while (very_long_loop) {
...
y1 = getSomeValue();
...
x1 = y1*cos(PI/2);
x2 = y2*cos(SOME_CONSTANT);
...
outputValues(x1, x2, ...);
}

明显的优化是提前计算余弦。我可以通过用值填充一个数组来做到这一点,但我想知道是否可以让编译器在编译时计算这些值?

编辑:我知道 C 没有编译时评估,但我希望有一些奇怪和丑陋的方法可以用宏来做到这一点。

最佳答案

如果幸运的话,您不需要做任何事情:现代编译器对同一翻译单元和内部函数(很可能包括数学函数)中的函数进行持续传播。

查看程序集以检查您的编译器是否属于这种情况,并在必要时提高优化级别。

关于C 中的编译时三角函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4633480/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com