Namespaces
Variants
Views
Actions

std::modf

From cppreference.com
< cpp | numeric | math
Revision as of 16:54, 4 May 2012 by P12bot (Talk | contribs)

Template:cpp/numeric/math/sidebar

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

Parameters

arg - floating point value
iptr - pointer to floating point value to store the integral part to

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.

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

See also

Template:cpp/numeric/math/dcl list trunc