English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di Base di C++

C++ 流程控制

Funzioni in C++

C++ 数组 & 字符串

C++ 数据结构

C++ 类 & 对象

Puntatori in C++

Ereditarietà in C++

Tutorial di STL di C++

C++ 参考手册

C++ llrint() 函数使用方法及示例

Funzioni di Libreria <cmath> in C++

C ++ 中的 llrint() 函数使用当前的舍入模式将参数舍入为整数值。

当前的舍入模式由 fesetround() 函数确定。它类似于lrint(),但是返回 long long int,而不是 long int。

原型 llrint() [从 C ++ 11 标准开始]

long long int llrint(double x);
long long int llrint(float x);
long long int llrint(long double x);
long long int llrint(T x); // Per interi

La funzione llrint() accetta un singolo parametro e restituisce un valore di tipo long long int. Questa funzione opera in<cmath>Definito nel file di intestazione.

Parametro llrint()

llrint() funziona con un singolo parametro e arrotonda il valore.

Valore restituito da llrint()

La funzione llrint() utilizza la direzione di arrotondamento specificata da fegetround() per arrotondare il parametro x a un valore intero e restituisce il valore in formato long long int.

Per impostazione predefinita, la direzione di arrotondamento è impostata su 'to-nearest'.

Puoi impostare la direzione di arrotondamento con la funzione fesetround() a valori diversi.

Esempio 1: Come funziona llrint() in C++?

#include <iostream>
#include <cmath>
#include <cfenv>
using namespace std;
int main()
{
    // Per impostazione predefinita, la direzione di arrotondamento è la più vicina, ossia fesetround(FE_TONEAREST)
    double x = 11.87;
    long long int result;
    result = llrint(x);
    cout << "Arrotondamento al più vicino (" << x << ") = " << result << endl;
    
    // Valore intermedio arrotondato al numero intero più alto
    x = 11.5;
    result = llrint(x);
    cout << "Arrotondamento al più vicino (" << x << ") = " << result << endl;
    // Imposta la direzione di arrotondamento su DOWNWARD
    fesetround(FE_DOWNWARD);
    x = 11.87;
    result = llrint(x);
    cout << "Arrotondamento verso il basso (" << x << ") = " << result << endl;
    
    // Imposta la direzione di arrotondamento su UPWARD
    fesetround(FE_UPWARD);
    x = 33.32;
    result = llrint(x);
    cout << "Arrotondamento verso l'alto (" << x << ") = " << result << endl;
    
    return 0;
}

Quando si esegue il programma, l'output è:

Arrotondamento al più vicino (11.87) = 12
Arrotondamento al più vicino (11.5) = 12
Arrotondamento verso il basso (11.8699) = 11
Arrotondamento verso l'alto (33.3201) = 34

Esempio 2: La funzione llrint() di tipo intero

#include <iostream>
#include <cmath>
#include <cfenv>
using namespace std;
int main()
{
    int x = 15;
    long long int result;
    
    //Imposta la direzione di arrotondamento su DOWNWARD
    fesetround(FE_DOWNWARD);
    result = llrint(x);
    cout << "Arrotondamento verso il basso (" << x << ") = " << result << endl;
    return 0;
}

Quando si esegue il programma, l'output è:

Arrotondamento verso il basso (15) = 15

Per valori interi, la funzione llrint restituisce lo stesso valore dell'input. Pertanto, non viene utilizzata spesso per rappresentare valori interi.

Funzioni di Libreria <cmath> in C++