C ++ llrint () - C ++ Standardbibliotek

Funktionen llrint () i C ++ avrundar argumentet till ett integrerat värde med det aktuella avrundningsläget.

Funktionen llrint () i C ++ avrundar argumentet till ett integrerat värde med det aktuella avrundningsläget.

Det aktuella avrundningsläget bestäms av funktionen fesetround(). Det liknar lrint (), men returnerar long long int istället för long int.

llrint () prototyp (Från och med C ++ 11 standard)

lång lång int llrint (dubbel x); lång lång int llrint (float x); lång lång int llrint (lång dubbel x); lång lång intllrint (T x); // För integrerad typ

Funktionen llrint () tar ett enda argument och returnerar ett värde av typen long long int. Denna funktion definieras i rubrikfilen.

llrint () Parametrar

Funktionen llrint () tar ett enda argumentvärde att runda.

llrint () Returvärde

Funktionen llrint () avrundar argumentet x till ett integrerat värde med den avrundningsriktning som anges fegetround()och returnerar värdet i long long int.

Som standard är avrundningsriktningen inställd på 'to-nearest'.

Avrundningsriktningen kan ställas in på andra värden med hjälp av fesetround()funktionen.

Exempel 1: Hur fungerar llrint () i C ++?

 #include #include #include using namespace std; int main() ( // by default, rounding direction is to-nearest i.e. fesetround(FE_TONEAREST) double x = 11.87; long long int result; result = llrint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // mid-way values are rounded off to higher integer x = 11.5; result = llrint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = llrint(x); cout << "Rounding downward (" << x << ") = " << result << endl; // setting rounding direction to UPWARD fesetround(FE_UPWARD); x = 33.32; result = llrint(x); cout << "Rounding upward (" << x << ") = " << result << endl; return 0; )

När du kör programmet blir resultatet:

 Avrundning till närmaste (11,87) = 12 Avrundning till närmaste (11,5) = 12 Avrundning nedåt (11,8699) = 11 Avrundning uppåt (33,3201) = 34

Exempel 2: funktionen llrint () för integrerade typer

 #include #include #include using namespace std; int main() ( int x = 15; long long int result; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); result = llrint(x); cout << "Rounding downward (" << x << ") = " << result << endl; return 0; ) 

När du kör programmet blir resultatet:

 Avrundning nedåt (15) = 15 

För integrerade värden returnerar samma värde som ingången genom att använda llrint-funktionen. Så det används inte ofta för integrerade värden i praktiken.

Intressanta artiklar...