C++函数在双精度数组中找到最大值?

Mik*_*ail 7 c++ arrays floating-point x86

我经常发现自己正在编写最大值函数来搜索一系列双精度函数我使用这些函数来在图形显示之前规范化数据.

有没有更好的方法来找到双打数组的最大值?是否有标准函数来查找数组中的最大值?这个操作有一些内在的东西吗?我记得DSP芯片中存在专门的ASM指令.

tem*_*def 16

是的!有一个叫做的函数std::max_element:

double arr[LENGTH] = /* ... */
double max = *std::max_element(arr, arr + LENGTH);
Run Code Online (Sandbox Code Playgroud)

你需#include <algorithm>要这样做.这头有一大堆在它好吃的东西,这是值得花时间去了解更多的STL容器和算法库,因为它们可以让你的生活因此变得更加容易.

只要我们讨论这个问题,就考虑研究std::vectorstd::array替代原始C++数组.它们更安全,更容易使用.

希望这可以帮助!