Published Dec 13, 2022
Contribute to Docs

The modf() function splits a given number into an integral and a fractional part.


modf(number, integralPart)

The modf() function takes two parameters:

  • number, a floating point value (double, float or long double) to split into integral and fractional parts.
  • integralPart, a pointer to number that stores the integral part. It will have the same type and sign as number.

The modf() function returns the fractional part of number with the same sign as number.


This example uses the modf() function to return the fractional part of 6.02214:

#include <iostream>
#include <cmath>
int main() {
double num1 = 6.02214;
double intPart;
double fractPart;
fractPart = modf(num1, &intPart);
std::cout << num1 << " = " << intPart << " + " << fractPart << "\n";
return 0;

This example results in the following output:

6.02214 = 6 + 0.02214

Codebyte Example

This example uses the modf() function to take an argument of 1.602176634 and return its fractional part while also storing the value of the integral part of the argument into integral:

Visit us
Hide code
Hide output
Hide output

All contributors

Looking to contribute?

Learn C++ on Codecademy