Sentinel floating-point conversion functions
Microsoft Specific
Conversion functions between floating-point types and integral types that use an Intel Architecture (IA) AVX-512 compatible sentinel strategy.
Syntax
int _cvt_ftoi_sent(float value);
long long _cvt_ftoll_sent(float value);
unsigned _cvt_ftoui_sent(float value);
unsigned long long _cvt_ftoull_sent(float value);
int _cvt_dtoi_sent(double value);
long long _cvt_dtoll_sent(double value);
unsigned _cvt_dtoui_sent(double value);
unsigned long long _cvt_dtoull_sent(double value);
Parameters
value
[in] A floating-point value to convert.
Return value
The integer-typed result of the conversion.
Requirements
Header: <intrin.h>
Architecture: x86, x64
Remarks
These intrinsics are floating-point to integral type conversion functions that use a sentinel strategy: They return the result value farthest from zero as a proxy sentinel value for NaN
. Any invalid conversion returns this sentinel value. The specific sentinel value returned depends on the result type.
Result type | Sentinel | <limits.h> constant |
---|---|---|
int |
-2147483648 (0x80000000) | INT_MIN |
unsigned int |
4294967295 (0xFFFFFFFF) | UINT_MAX |
long long |
-9223372036854775808 (0x8000000000000000) | LLONG_MIN |
unsigned long long |
18446744073709551615 (0xFFFFFFFFFFFFFFFF) | ULLONG_MAX |
The sentinel conversion intrinsics are available starting in Visual Studio 2019 version 16.10.
END Microsoft Specific
See also
Compiler intrinsics
Fast floating-point conversion functions
Saturation floating-point conversion functions