コンパイル時に pow(10,x) を計算することは可能ですか?
浮動小数点をサポートせず、整数除算が遅いプロセッサを使用しています。コンパイル時にできるだけ多くの計算を実行しようとしています。x
と の両方を引数として渡すと、特定の関数を劇的に高速化できC/pow(10,x)
ます (x と C は常に定数の整数ですが、呼び出しごとに異なる定数です)。1/pow(10,x)
プログラマーに計算を強制するのではなく 、自動的に実行するマクロを導入することで、これらの関数呼び出しのエラーを少なくできるかどうか疑問に思っています。
プリプロセッサのトリックはありますか? コンパイラーがライブラリー呼び出しを強制的に最適化することはできますか?