std::div, std::ldiv, std::lldiv
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header <cstdlib>
   | 
||
|   std::div_t     div( int x, int y );  | 
||
|   std::ldiv_t    div( long x, long y );  | 
||
|   std::lldiv_t   div( long long x, long long y );  | 
(since C++11) | |
|   std::ldiv_t   ldiv( long x, long y );  | 
||
|   std::lldiv_t lldiv( long long x, long long y );  | 
(since C++11) | |
|   Defined in header <cinttypes>
   | 
||
|   std::imaxdiv_t div( std::intmax_t x, std::intmax_t y );  | 
(since C++11) | |
|   std::imaxdiv_t imaxdiv( std::intmax_t x, std::intmax_t y );  | 
(since C++11) | |
Computes the quotient and remainder of the division operation x/y.
[edit] Parameters
| x, y | - | integer values | 
[edit] Return value
structure of type div_t, ldiv_t, ldiv_t, imaxdiv_t defined as:
struct div_t { int quot; // The quotient int rem; // The remainder }; struct ldiv_t { long quot; // The quotient long rem; // The remainder }; struct lldiv_t { long long quot; // The quotient long long rem; // The remainder }; struct imaxdiv_t { std::intmax_t quot; // The quotient std::intmax_t rem; // The remainder };
[edit] See also
|    remainder of the floating point division operation  (function)  | |