lrint
, , lrintf
, lrintl
, llrint
, , llrintf
llrintl
Zaokrągla określoną wartość zmiennoprzecinkową do najbliższej wartości całkowitej przy użyciu bieżącego trybu zaokrąglania i kierunku.
Składnia
long int lrint(
double x
);
long int lrint(
float x
); //C++ only
long int lrint(
long double x
); //C++ only
long int lrintf(
float x
);
long int lrintl(
long double x
);
long long int llrint(
double x
);
long long int llrint(
float x
); //C++ only
long long int llrint(
long double x
); //C++ only
long long int llrintf(
float x
);
long long int llrintl(
long double x
);
#define lrint(X) // Requires C11 or higher
Parametry
x
Wartość do zaokrąglenie.
Wartość zwracana
Jeśli operacja powiedzie się, zwraca zaokrąglona wartość całkowita .x
Problem | Powrót |
---|---|
x znajduje się poza zakresem typu zwracanegox = ±INFx = NaN |
FE_INVALID Podnosi i zwraca zero (0). |
Uwagi
Ponieważ język C++ umożliwia przeciążenie, można wywoływać przeciążenia lrint
elementów i , które przyjmują float
typy llrint
i long double
. W programie języka C, chyba że używasz makra <tgmath.h> do wywołania tej funkcji i lrint
llrint
zawsze użyjesz double
polecenia .
Jeśli używasz makra <tgmath.h>llrint()
, typ argumentu określa, która wersja funkcji jest zaznaczona. Aby uzyskać szczegółowe informacje, zobacz Typy ogólne matematyczne .
Jeśli x
nie reprezentuje zmiennoprzecinkowego odpowiednika wartości całkowitej, te funkcje zgłaszają wartość FE_INEXACT
.
Specyficzne dla firmy Microsoft: jeśli wynik znajduje się poza zakresem zwracanego typu lub gdy parametr jest wartością NaN lub nieskończoność, wartość zwracana jest zdefiniowana. Kompilator firmy Microsoft zwraca wartość zero (0).
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
Function | Nagłówek języka C | Nagłówek języka C++ |
---|---|---|
lrint , , lrintf , lrintl , llrint , , llrintf llrintl |
<math.h> | <cmath> |
lrint Makro |
<tgmath.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.