Floating-point numbers can take on two kinds of exceptional values, infinity and NaN
(not-a-number). These values are produced as a result of exceptional or otherwise unresolvable floating point operations. (See also, FLP32-C. Prevent or detect domain and range errors in math functions). Additionally, they can be obtained directly from user input through the aid of methods like Double.valueOf(String s)
. Failure to detect and handle such values can result in inconsistent behavior.
...
Wiki Markup |
---|
\[[IEEE 754|https://www.securecoding.cert.org/confluence/display/seccode/AA.+C+References#AA.CReferences-IEEE7542006|IEEE 754]\]
\[[ISO/IEC 9899:1999|https://www.securecoding.cert.org/confluence/display/seccode/AA.+C+References#AA.CReferences-ISO%2FIEC98991999|ISO/IEC 9899:1999]\]
\[[IEEE 1003.1, 2004|https://www.securecoding.cert.org/confluence/display/seccode/AA.+C+References#AA.CReferences-IEEE1003|IEEE 1003.1, 2004]\] |