C ++ llrint () - C ++ -kirjasto

Funktio llrint () pyöristää argumentin integraaliarvoon nykyistä pyöristystilaa käyttämällä.

Funktio llrint () pyöristää argumentin integraaliarvoon nykyistä pyöristystilaa käyttämällä.

Nykyinen pyöristystila määräytyy toiminnon avulla fesetround(). Se on samanlainen kuin lrint (), mutta palauttaa pitkän pitkän intin pitkän intin sijaan.

llrint () -prototyyppi (standardin C ++ 11 mukaan)

pitkä pitkä int lrrint (kaksinkertainen x); pitkä pitkä int lrrint (float x); pitkä pitkä int lrrint (pitkä kaksinkertainen x); pitkä pitkä int lrrint (T x); // integraalityypille

Funktio llrint () ottaa yhden argumentin ja palauttaa tyypin long long int arvon. Tämä toiminto on määritelty otsikkotiedostossa.

llrint () -parametrit

Funktio llrint () pyöristää yhden argumentin arvon.

llrint () Palautusarvo

Funktio llrint () pyöristää argumentin x integraaliarvoon käyttämällä määritettyä pyöristyssuuntaa fegetround()ja palauttaa arvon sisään long long int.

Pyöristyssuunta on oletusarvoisesti 'to-nearest'.

Pyöristyssuunta voidaan asettaa muille arvoille fesetround()toiminnolla.

Esimerkki 1: Kuinka llrint () toimii C ++: ssa?

 #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; )

Kun suoritat ohjelmaa, tulos on:

 Pyöristäminen lähimpään (11,87) = 12 Pyöristäminen lähimpään (11,5) = 12 Pyöristäminen alaspäin (11,8699) = 11 Pyöristäminen ylöspäin (33,3201) = 34

Esimerkki 2: funktio llrint () integraaleille tyypeille

 #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; ) 

Kun suoritat ohjelmaa, tulos on:

 Pyöristäminen alaspäin (15) = 15 

Integraaliarvoille llrint-funktion soveltaminen palauttaa saman arvon kuin tulo. Joten sitä ei käytetä yleisesti integraaliarvoissa käytännössä.

Mielenkiintoisia artikkeleita...