trunc
, truncf
, truncl
Určuje nejbližší celé číslo, které je menší nebo rovno zadané hodnotě s plovoucí desetinou čárkou.
Syntaxe
double trunc( double x );
long double truncl( long double x );
#define trunc(X) // Requires C11 or higher
long double trunc( long double x ); //C++ only
float trunc( float x ); //C++ only
Parametry
x
Hodnota, která se má zkrátit.
Vrácená hodnota
V případě úspěchu funkce vrátí celočíselnou x
hodnotu , zaokrouhlenou na nulu.
V opačném případě můžou funkce vrátit jednu z následujících hodnot:
Problém | Vrácení |
---|---|
x = ±INFINITY |
x |
x = ±0 |
x |
x = NaN |
NaN |
Chyby jsou hlášeny, jak je uvedeno v _matherr
.
Poznámky
Vzhledem k tomu, že jazyk C++ umožňuje přetížení, můžete volat přetížení trunc
, která přebírají a vracejí float
a long double
typy. Pokud v programu jazyka C nepoužíváte <makro tgmath.h> k volání této funkce, trunc
vždy přebírá a vrací hodnotu double
.
Pokud použijete <makro tgmath.h>trunc()
, typ argumentu určuje, která verze funkce je vybrána. Podrobnosti najdete v tématu Matematika pro obecné typy.
Vzhledem k tomu, že největší hodnoty s plovoucí desetinou čárkou jsou přesná celá čísla, nebude tato funkce přetékat sama. Funkci však můžete způsobit přetečení vrácením hodnoty do celočíselného typu.
Můžete také zaokrouhlit dolů implicitním převodem z plovoucí desetině na integrální; To je však omezeno na hodnoty, které lze uložit v cílovém typu.
Požadavky
Function | Záhlaví jazyka C | Hlavička jazyka C++ |
---|---|---|
trunc , truncf , truncl |
<math.h> | <cmath> |
trunc Makro |
<tgmath.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Viz také
Abecední odkaz na funkci
floor
, floorf
, floorl
ceil
, ceilf
, ceill
round
, roundf
, roundl
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro