Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Arrotonda il valore a virgola mobile specificato al valore integrale più prossimo, usando la modalità di arrotondamento e la direzione correnti.
Sintassi
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 later
Parametri
x
Il valore da arrotondare.
Valore restituito
In caso di esito positivo restituisce il valore integrale arrotondato di x.
| Problema | Restituzione |
|---|---|
x non è compreso nell'intervallo del tipo restituitox = ±INFx = NaN |
Genera FE_INVALID e restituisce zero (0). |
Osservazioni:
Poiché C++ consente l'overload, è possibile chiamare overload di lrint e che accettano float tipi llrint e long double . In un programma C, a meno che non si usi la <macro tgmath.h> per chiamare questa funzione lrint e llrint accettare sempre .double
Se si utilizza la <macro tgmath.h>llrint() , il tipo dell'argomento determina quale versione della funzione è selezionata. Per informazioni dettagliate, vedere La matematica generica dei tipi.
Se x non rappresenta l'equivalente a virgola mobile di un valore integrale, queste funzioni generano FE_INEXACT.
Specifico di Microsoft: quando il risultato non rientra nell'intervallo del tipo restituito o quando il parametro è nan o infinito, il valore restituito viene definito. Il compilatore Microsoft restituisce un valore zero (0).
Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.
Requisiti
| Funzione | Intestazione C | Intestazione C++ |
|---|---|---|
lrint, lrintf, lrintl, llrint, llrintfllrintl |
<math.h> | <cmath> |
lrint macro |
<tgmath.h> |
Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).