×

C++ Tutorial

C++ Data types

C++ Operators & Keywords

C++ Conditional Statements

C++ Functions

C++ 'this' Pointer, References

C++ Class & Objects

C++ Constructors & Destructors

C++ Operator overloading

C++ 11 (Advance C++)

C++ Preparation

C++ Header Files & Functionsr

Data Structure with C++

C++ - Miscellaneous

C++ Programs

lrint() Function with Example in C++

C++ lrint() function: Here, we are going to learn about the lrint() function with example of cmath header in C++ programming language.
Submitted by IncludeHelp, on May 20, 2020

C++ lrint() function

lrint() function is a library function of cmath header, it is used to round the given value and convert it to a long integer. It accepts a value (float, double, or long double) and returns a long integer value after rounding it based on the rounding direction specified by fegetround() function.

Syntax

Syntax of lrint() function:

C++11:

long int lrint (double x);
long int lrint (float x);
long int lrint (long double x);
long int lrint (T x); 

Parameter(s)

  • x – represents the value to round.

Return value

The returns type of this function is long int, it returns a long integer value rounded to nearby integral.

Sample Input and Output

Input:
float x = 123.4f;
    
Function call:
lrint(x);
    
Output:
123

Input:
float x = 123.5f;
    
Function call:
lrint(x);
    
Output:
124

Example

C++ code to demonstrate the example of lrint() function:

// C++ code to demonstrate the example of
// lrint() function

#include <iostream>
#include <cmath>
#include <fenv.h> // for fegetround()
using namespace std;

int main()
{
    float x = 0.0f;

    cout << "Specified rounding is: ";
    switch (fegetround()) {
    case FE_DOWNWARD:
        cout << "Downward" << endl;
        break;
    case FE_TONEAREST:
        cout << "To-nearest" << endl;
        break;
    case FE_TOWARDZERO:
        cout << "Toward-zero" << endl;
        break;
    case FE_UPWARD:
        cout << "Upward" << endl;
        break;
    default:
        cout << "Unknown" << endl;
    }

    x = 123.4f;
    cout << "lrint(" << x << "): " << lrint(x) << endl;

    x = 123.5f;
    cout << "lrint(" << x << "): " << lrint(x) << endl;

    x = 123.6f;
    cout << "lrint(" << x << "): " << lrint(x) << endl;

    x = -123.4f;
    cout << "lrint(" << x << "): " << lrint(x) << endl;

    x = -123.5f;
    cout << "lrint(" << x << "): " << lrint(x) << endl;

    x = -123.6f;
    cout << "lrint(" << x << "): " << lrint(x) << endl;

    return 0;
}

Output

Specified rounding is: To-nearest
lrint(123.4): 123
lrint(123.5): 124
lrint(123.6): 124
lrint(-123.4): -123
lrint(-123.5): -124
lrint(-123.6): -124

Reference: C++ lrint() function



Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.