std::modf splits a double into its integer and a fractional part, for example it splits 12.34 into 12 and 0.34.
#include <cmath> #include <iostream> int main() { double int_part = 0.0; const double fraction_part = std::modf(M_E,&int_part); std::cout << M_E << " = " << int_part << " + " << fraction_part << '\n'; }
Screen output: