c/numeric/math/modf

@1-3@ Decomposes given floating point value into integral and fractional parts, each having the same type and sign as. The integral part (in floating-point format) is stored in the object pointed to by.

Return value
If no errors occur, returns the fractional part of with the same sign as. The integral part is put into the value pointed to by.

The sum of the returned value and the value stored in gives  (allowing for rounding).

Error handling
This function is not subject to any errors specified in math_errhandling.

If the implementation supports IEEE floating-point arithmetic (IEC 60559),
 * If is ±0, ±0 is returned, and ±0 is stored in.
 * If is ±∞, ±0 is returned, and ±∞ is stored in.
 * If is NaN, NaN is returned, and NaN is stored in.
 * The returned value is exact, the current rounding mode is ignored