📜  C++ ldiv()

📅  最后修改于: 2020-09-25 08:52:08             🧑  作者: Mango

C++中的ldiv() 函数计算整数和两个数除法的余数。

ldiv()可以认为是div()的long int版本。

它在头文件中定义。

数学上

quot * y + rem = x

ldiv()原型[从C++ 11标准开始]

ldiv_t ldiv(long int x, long int y);
ldiv_t ldiv(long x, long y);

ldiv() 函数采用两个参数xy ,并返回整数商和x除以y的余数。

的商quot是表达式x / y的结果。其余的rem是表达式x%y的结果。

ldiv()参数

ldiv()返回值

ldiv() 函数返回类型为ldiv_t的结构,该结构由两个成员组成: quotrem 。定义如下:

struct ldiv_t {
    long quot;
    long rem;
};

示例:ldiv() 函数如何在C++中工作?

#include 
#include 
using namespace std;

int main()
{
    long nume = 999810291L;
    long deno = 120L;

    ldiv_t result = ldiv(nume, deno);

    cout << "Quotient of " << nume << "/" << deno << " = " << result.quot << endl;
    cout << "Remainder of " << nume << "/" << deno << " = " << result.rem << endl;
    
    return 0;
}

运行该程序时,输出为:

Quotient of 999810291/120 = 8331752
Remainder of 999810291/120 = 51