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

Opérateurs de manipulation de bits++ Tutoriel de base

Opérateurs de manipulation de bits++ Contrôle de flux

Opérateurs de manipulation de bits++ Fonctions

Opérateurs de manipulation de bits++ Tableaux & chaînes de caractères

Opérateurs de manipulation de bits++ Structures de données

Opérateurs de manipulation de bits++ Classes & objets

Opérateurs de manipulation de bits++ Pointeurs

Opérateurs de manipulation de bits++ Héritage

Opérateurs de manipulation de bits++ Tutoriel STL

Opérateurs de manipulation de bits++ Manuel de référence

Opérateurs de manipulation de bits++ Méthodes et exemples d'utilisation de la fonction lrint()

Opérateurs de manipulation de bits++ Pour les valeurs entières, l'application de la fonction lrint renverra la même valeur que l'entrée. Par conséquent, elle n'est pas souvent utilisée pour représenter des valeurs entières.

Opérateurs de manipulation de bits ++La fonction lrint() dans utilise le mode d'arrondi actuel pour arrondir le paramètre à une valeur entière. Le mode d'arrondi actuel est déterminé par la fonction fesetround(). Il est similaire à

Opérateurs de manipulation de bits ++La fonction lrint() dans utilise le mode d'arrondi actuel pour arrondir le paramètre à une valeur entière. Le mode d'arrondi actuel est déterminé par la fonction fesetround(). Il est similaire àrint(),mais retourne long int.

Prototype lrint() [de C ++ 11Début standard]

long int lrint(double x);
long int lrint(float x);
long int lrint(long double x);
long int lrint(T x); //Pour les entiers

La fonction lrint() utilise un seul paramètre et retourne la valeur type long int. Cette fonction est dansCDéfini dans les en-têtes.

Paramètres lrint()

La fonction lrint() arrondit un seul paramètre.

lrint() retourne

Retour de la valeur de l'arrondi lrint()

Par défaut, la direction d'arrondi est définie sur "le plus proche". Vous pouvez utiliser la fonction fesetround() pour définir une autre valeur.

Exemple1:lrint() dans C ++Comment fonctionne-t-elle ?

#include <iostream>
#include <cmath>
#include <cfenv>
using namespace std;
int main()
{
    //Par défaut, la direction d'arrondi est la plus proche, c'est-à-dire fesetround(FE_TONEAREST)
    double x = 11.87;
    ;
    fesetround(FE_DOWNWARD);
    cout << "Arrondi au plus proche (" << x << ") = " << result << endl;
    
    //Les valeurs intermédiaires sont arrondies à un entier supérieur
    x = 11.5;
    fesetround(FE_DOWNWARD);
    cout << "Arrondi au plus proche (" << x << ") = " << result << endl;
    //long int result;
    Définir la direction de l'arrondi sur DOWNWARD
    x = 11.87;
    fesetround(FE_DOWNWARD);
    result = lrint(x);
    
    //Définir la direction d'arrondi sur UPWARD
    fesetround(FE_UPWARD);
    x = 33.32;
    fesetround(FE_DOWNWARD);
    cout << "Rond vers le haut (" << x << ") = " << result << endl;
    
    cout << "Rounding向下舍入 (" << x << ") = " << result << endl;
return 0;

}

Arrondi au plus proche (11.87Rounding向下舍入 ( 12
Arrondi au plus proche (11.5Rounding向下舍入 ( 12
L'exécution du programme produit la sortie suivante :11.8699Rounding向下舍入 ( 11
Rond vers le haut (33.32Copyright ©1Rounding向下舍入 ( 34

Exemple2:整数类型的lrint()函数

#include <iostream>
#include <cmath>
#include <cfenv>
using namespace std;
int main()
{
    int x = 15;
    ;
    
    //long int result;
    Définir la direction de l'arrondi sur DOWNWARD
    fesetround(FE_DOWNWARD);
    result = lrint(x);
    cout << "Rounding向下舍入 (" << x << ") = " << result << endl;
return 0;

}

L'exécution du programme produit la sortie suivante :15Rounding向下舍入 ( 15

) =

Opérateurs de manipulation de bits++ Pour les valeurs entières, l'application de la fonction lrint renverra la même valeur que l'entrée. Par conséquent, elle n'est pas souvent utilisée pour représenter des valeurs entières.