C++ 中的 Rint()、Rintf() 和 Rintl() 函数

17 Mar 2025 | 4 分钟阅读

在本文中,您将学习 C++ 中的 rint()、rintf()rintl() 函数及其语法和示例。

“C++ 中 rint()、rintf()、rintl() 函数”介绍

在 C++ 中,rint()、rintf()rintl() 功能是头文件 <cmath> 的一部分,它们用于将浮点数四舍五入到最接近的整数。这些功能使用的舍入模式是四舍五入到最接近的整数,如果出现平局,则四舍五入到偶数。

Rint (), Rintf (), and Rintl () functions in C++

以下是每个功能的简短介绍

1. Rint ()

此功能将双精度浮点数作为问题并返回四舍五入的整数值。

语法

它具有以下语法:

示例

让我们以一个示例来说明 rint() 函数 在 C++ 中的使用。

输出

Original value: 3.6
Rounded value: 4

C++ 中 std::rint () 功能的时间和空间复杂度通常是常规 (O(1))。让我们讨论一下复杂性

时间复杂度: std::rint () 功能通常涉及数学运算和可能的一些位操作,以将浮点数四舍五入到最接近的整数。这些操作具有常规时间复杂度,这意味着这些操作所需的时间不再取决于输入的大小。

空间复杂度: std::rint () 的空间复杂度也常规 (O(1))。它使用常规数量的内存来保持局部变量并执行计算。使用的内存量不再随输入的大小而扩展。总之,C++ 中的 std::rint() 功能旨在具有高效的常规时间和空间复杂度,使其适用于各种包,而不会引入与输入大小相关的整体性能问题。

2. Rintf ()

类似于 rint (),它将单精度浮点数作为问题并返回四舍五入的整数值。

语法

它具有以下语法:

示例

让我们以一个示例来说明 rintf() 函数 在 C++ 中的使用。

输出

Original value: 3.6
Rounded value: 4

说明

在此输出中,初始值为 3.6f,使用 std::rintf () 四舍五入后结果为 4.0f。与上一个示例一样,打印小数 .0 不会显示结果,因为它隐含地假设为整数。

复杂性分析

C++ 中 std::rintf () 功能的时间和空间复杂度通常是稳定的 (O (1))。以下是复杂性的细分

时间复杂度: std::rintf () 功能涉及数学运算,以将单精度浮点数四舍五入到最接近的整数。这些操作通常具有稳定的时间复杂度。这些操作所需的时间不取决于输入的大小。

空间复杂度: std::rintf () 的空间复杂度也稳定 (O (1))。该功能使用稳定数量的内存来保存附近的变量并执行计算。使用的内存量不随输入的大小而扩展。

3. Rintl()

此特性用于长的 双精度 浮点数。它以长双精度作为参数并返回四舍五入的整数值。

语法

它具有以下语法:

示例

让我们以一个示例来说明 rintl() 函数 在 C++ 中的使用。

输出

Original value: 3.6
Rounded value: 4

说明

在此输出中,初始值为 3.6L,使用 std::rintl () 四舍五入后结果为 4.0L。如前所述,打印结果时不会显示小数 .0,因为它隐含地假设为整数。

复杂性分析

C++ 中 std::rintl () 函数的时间和空间复杂度通常是恒定的 (O(1))。以下是复杂性的细分

时间复杂度: std::rintl () 函数包含数学运算,用于将长双精度浮点数四舍五入到最接近的整数。这些操作通常具有恒定的时间复杂度。这些操作所需的时间不取决于输入的大小。

空间复杂度: std::rintl() 的空间复杂度也是恒定的 (O(1))。该函数使用恒定数量的内存来存储局部变量并执行计算。使用的内存量不随输入的大小而扩展。