C ++ llrint () - C ++ standartinė biblioteka

Funkcija llrint () C ++ suapvalina argumentą iki vientisos vertės, naudodama dabartinį apvalinimo režimą.

Funkcija llrint () C ++ suapvalina argumentą iki vientisos vertės, naudodama dabartinį apvalinimo režimą.

Dabartinį apvalinimo režimą nustato funkcija fesetround(). Jis panašus į lrint (), bet grąžina ilgą ilgą int, o ne ilgą int.

llrint () prototipas (Pagal C ++ 11 standartą)

ilgas ilgas int llrint (dvigubas x); ilgas ilgas int llrint (plūdinis x); ilgas ilgas int llrint (ilgas dvigubas x); ilgas ilgas int llrint (T x); // integraliniam tipui

Funkcija llrint () užima vieną argumentą ir grąžina tipo long long int reikšmę. Ši funkcija apibrėžta antraštės faile.

llrint () parametrai

Funkcija llrint () suapvalina vieną argumento reikšmę.

llrint () Grąžinimo vertė

Funkcija llrint () suapvalina argumentą x iki vientisos vertės, naudodama apvalinimo kryptį, kurią nurodo, fegetround()ir grąžina reikšmę long long int.

Pagal numatytuosius nustatymus apvalinimo kryptis yra nustatyta 'to-nearest'.

Suapvalinimo kryptį galima nustatyti į kitas reikšmes, naudojant fesetround()funkciją.

1 pavyzdys: Kaip llrint () veikia 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; )

Kai paleisite programą, išvestis bus:

 Suapvalinimas iki artimiausio (11,87) = 12 Apvalinimas iki artimiausio (11,5) = 12 Apvalinimas žemyn (11,8699) = 11 Apvalinimas į viršų (33,3201) = 34

2 pavyzdys: funkcija llrint () integraliems tipams

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

Kai paleisite programą, išvestis bus:

 Apvalinimas žemyn (15) = 15 

Integraliosioms reikšmėms pritaikius funkciją llrint, gaunama ta pati reikšmė kaip ir įvestyje. Taigi praktiškai jis nėra naudojamas vientisoms vertėms.

Įdomios straipsniai...