std::modf
From cppreference.com
Defined in header <cmath>
|
||
float modf( float x, float* iptr ); |
||
double modf( double x, double* iptr ); |
||
long double modf( long double x, long double* iptr ); |
||
Decomposes given floating point value x into integral and fractional parts, each having the same type and sign as x. The integral part (in floating-point format) is stored in the object pointed to by iptr.
Contents |
[edit] Parameters
arg | - | floating point value |
iptr | - | pointer to floating point value to store the integral part to |
[edit] Return value
The fractional part of x with the same sign as x. The integral part is put into the value pointed to by iptr.
[edit] Example
#include <iostream> #include <cmath> int main() { double f = 123.45; double f3; double f2 = std::modf(f, &f3); std::cout << "Given the number " << f << ", " << "modf() makes " << f3 << " and " << f2 << '\n'; f = -3.21; f2 = std::modf(f, &f3); std::cout << "Given the number " << f << ", " << "modf() makes " << f3 << " and " << f2 << '\n'; }
Output:
Given the number 123.45, modf() makes 123 and 0.45 Given the number -3.21, modf() makes -3 and -0.21
[edit] See also
(C++11) |
nearest integer not greater in magnitude than the given value (function) |