📜  c++ 将值设置为 inf - C++ (1)

📅  最后修改于: 2023-12-03 15:14:00.014000             🧑  作者: Mango

C++将值设置为inf

在C++中,我们可以使用特殊值inf来表示正无穷大,使用-inf表示负无穷大。这通常在需要比较大小时非常有用。例如,我们可以使用inf将变量初始化为在后续代码中找到的最大值。让我们来看一个例子:

#include <iostream>
#include <cmath>

int main() {
    double max_val = -INFINITY; // 初始最大值为负无穷
    double arr[] = {3.14, -5.6, 10.2, 100.5, -20.9}; // 一个double类型的数组

    for (int i = 0; i < 5; i++) { // 遍历数组
        if (arr[i] > max_val) { // 如果发现更大的值
            max_val = arr[i]; // 更新最大值
        }
    }

    std::cout << "The maximum value in the array is: " << max_val << std::endl; // 输出最大值

    return 0;
}

输出:

The maximum value in the array is: 100.5

在上面的例子中,我们将max_val初始化为负无穷。在遍历数组时,如果我们发现比max_val更大的值,则将max_val更新为该值。最终,max_val将等于数组中的最大值。

在C++中,可以使用numeric_limits头文件中的infinity()-infinity()函数来获得正无穷和负无穷的值。例如:

#include <iostream>
#include <limits>

int main() {
    double inf = std::numeric_limits<double>::infinity(); // inf为正无穷
    double neg_inf = -std::numeric_limits<double>::infinity(); // neg_inf为负无穷

    std::cout << "Positive infinity: " << inf << std::endl;
    std::cout << "Negative infinity: " << neg_inf << std::endl;

    return 0;
}

输出:

Positive infinity: inf
Negative infinity: -inf

在上面的例子中,我们使用numeric_limits头文件中的double类型来获得正无穷和负无穷的值,并将它们分别存储在infneg_inf变量中。通过打印这两个变量,我们可以看到C++将正无穷表示为inf,将负无穷表示为-inf

总结:

在C++中,我们可以使用inf-inf来表示正无穷和负无穷。这通常在比较大小时非常有用。我们还可以使用numeric_limits头文件中的infinity()-infinity()函数来获得正无穷和负无穷的值。