[#BloombergLP-bdlb-Float-isSignalingNan-0f] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlb.adoc[bdlb]::xref:BloombergLP/bdlb/Float.adoc[Float]::isSignalingNan :relfileprefix: ../../../ :mrdocs: Return `true` if `number` is a signaling NaN. == Synopsis Declared in `<bdlb_float.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- static bool isSignalingNan(float number); ---- == Description An invalid floating‐point value ("signaling NaN" or "SNaN") is never the result of a valid operation ‐‐ it must be produced deliberately (i.e., by calling `bsl::numeric_limits<float>::signaling_NaN()`). If an SNaN is used in a subsequent operation, the result is undefined and may result in a hardware trap leading to a signal. Some platforms do not support signaling NaNs, especially for single‐precision floats, and will convert an SNaN to a QNaN on assignment or copy‐initialization (including argument passing). `isSignalingNan` will always return `false` on such platforms. Note that, because an SNaN is a NaN, if this method returns `true`, then `isNan(x)` will also return `true`. == Return Value `true` if `number` is a signaling NaN, and `false` otherwise == Parameters [cols="1,4"] |=== | Name| Description | *number* | floating‐point value to test |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#