C ++ llrint () - C ++ Standardbibliotek

Funktionen llrint () i C ++ afrunder argumentet til en integreret værdi ved hjælp af den aktuelle afrundingstilstand.

Funktionen llrint () i C ++ afrunder argumentet til en integreret værdi ved hjælp af den aktuelle afrundingstilstand.

Den aktuelle afrundingstilstand bestemmes af funktionen fesetround(). Det svarer til lrint (), men returnerer long long int i stedet for long int.

llrint () prototype (pr. C ++ 11 standard)

lang lang int llrint (dobbelt x); lang lang int llrint (float x); lang lang int llrint (lang dobbelt x); lang lang int llrint (T x); // For integreret type

Funktionen llrint () tager et enkelt argument og returnerer en værdi af typen long long int. Denne funktion er defineret i headerfilen.

llrint () Parametre

Funktionen llrint () tager en enkelt argumentværdi at afrunde.

llrint () Returværdi

Funktionen llrint () afrunder argumentet x til en integreret værdi ved hjælp af afrundingsretningen angivet af fegetround()og returnerer værdien i long long int.

Afrundingsretningen er som standard indstillet til 'to-nearest'.

Afrundingsretningen kan indstilles til andre værdier ved hjælp af fesetround()funktionen.

Eksempel 1: Hvordan fungerer 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ører programmet, vil output være:

 Afrunding til nærmeste (11,87) = 12 Afrunding til nærmeste (11,5) = 12 Afrunding nedad (11,8699) = 11 Afrunding opad (33,3201) = 34

Eksempel 2: llrint () -funktion til integrerede 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ører programmet, vil output være:

 Afrunding nedad (15) = 15 

Ved integrerede værdier returnerer anvendelse af llrint-funktionen den samme værdi som input. Så det bruges ikke almindeligt til integrerede værdier i praksis.

Interessante artikler...