如何在 C++ 中将无穷大赋值给数字?

17 Mar 2025 | 5 分钟阅读

在本文中,我们将讨论如何使用几种方法在 C++ 中将无穷大赋值给数字。在进行实现之前,我们必须了解无穷大。

什么是无穷大和负无穷大?

无穷大是一个通过将一个正整数除以一个非常小的正值而得到的值,或者它可能是一个非常大的值,我们的系统无法用 64 位表示。许多 C++ 库,如 cmathlimits,定义了正无穷大或无符号无穷大值。然而,在 C++ 中没有公认的方式来表达负无穷大。在 C++ 中有几种表达负无穷大的技术,我们将在下面详细介绍。

使用 numeric_limits::infinity() 的负值

numeric_limits::的数据类型: infinity() 函数用于在 C++ 中将无穷大值赋值给变量。它可以在 C++ 库的 limits 模块中找到。以下是其实现和解释。

1. 使用浮点数据类型 C++ 实现

输出

How to Assign Infinity to a Number in C++

说明

以下解释说明了如何理解上述代码

  • 值为 Infinity 的变量具有浮点数据类型。
  • 基于浮点数的 numeric_limits:: Infinity() 函数将 Inf 变量的值设置为 Infinity。
  • 之后,我们声明了一个浮点数据类型变量 negative_Inf,并将其值设置为 Inf*-1,这是无穷大值的相反数。通过这种方式,我们将负无穷大赋值给了一个变量。
  • 接下来,打印正无穷大和负无穷大的值。

2. 使用双精度数据类型 C++ 实现

输出

How to Assign Infinity to a Number in C++

说明

可以使用以下步骤来理解上述代码。

  • 我们可以使用双精度数据类型来给变量赋值为 Infinity。
  • 双精度值的 numeric_limits:: Infinity() 函数将 Inf 变量的值设置为 Infinity。
  • 之后,我们声明了一个双精度数据类型变量 negative_Inf,并将其值设置为 Inf*-1,这是无穷大值的相反数。通过这种方式,我们将负无穷大赋值给了一个变量。
  • 接下来,打印正无穷大和负无穷大的值。

3. 使用整型数据类型 C++ 实现

输出

How to Assign Infinity to a Number in C++

说明

  • 我们可以使用 int 数据类型的变量来赋值 Infinity。
  • numeric_int::的限制: 当处理 int 数据类型时,infinity() 函数的行为有所不同。在正无穷大的情况下,它将值 0 赋给 Inf 变量;因此,我们已将值加 1 以表示无穷大的符号。
  • 之后,我们声明了一个名为 negative_Inf 的 int 数据类型变量,并将其值设置为 Inf*-1,这是无穷大值的倒数。通过这种方式,我们将负值赋给了一个变量。
  • 最后,我们打印了正负值。

使用 cmath 库中的 Infinity。

在 C++ 中,我们还可以使用 INFINITY 给变量赋值无穷大。它不能赋值给 int 数据类型,但可以赋值给 float 和 double 数据类型。它可以在 C++ 库的 cmath 模块中找到。以下是其实现和解释。

1. 使用浮点数据类型 C++ 实现

输出

How to Assign Infinity to a Number in C++

说明

可以使用以下步骤来理解上述代码。

  • 我们可以使用浮点数据类型变量来赋值 Infinity。
  • INFINITY 将 Inf 变量的值赋为 Infinity。
  • 之后,我们声明了一个浮点数据类型变量 negative_Inf,并将其值设置为 Inf*-1,这是无穷大值的相反数。通过这种方式,我们将负无穷大赋值给了一个变量。
  • 最后,打印正无穷大和负无穷大的值。

2. 使用双精度数据类型 C++ 实现

输出

How to Assign Infinity to a Number in C++

说明

可以使用以下步骤来理解上述代码。

  • 我们可以使用双精度数据类型变量来赋值 Infinity。
  • INFINITY 将 Inf 变量的值赋为 Infinity。
  • 之后,我们声明了一个双精度数据类型变量 negative_Inf,并将其值设置为 Inf*-1,这是无穷大值的相反数。通过这种方式,我们将负无穷大赋值给了一个变量。
  • 最后,打印正无穷大和负无穷大的值。