C++官网参考链接:https://cplusplus.com/reference/cstdlib/div/
函数
<cstdlib>
div
C
div_t div(int numer, int denom);
C++98
div_t div(int numer, int denom);
ldiv_t div(long int numer, long int denom);
C++11
div_t div(int numer, int denom);
ldiv_t div(long int numer, long int denom);
lldiv_t div(long long int numer, long long int denom);
整数除法
返回numer除以denom(numer/denom)的整数商和余数,作为类型为div_t,ldiv_t或lldiv_t的结构,它有两个成员:quot和rem。
形参
numer
分子。
denom
分母。
返回值
结果由中<cstdlib>定义的结构中的值返回,该结构有两个成员。对于div_t,它们按任意顺序排列:
int quot; // quotient
int rem; // remainder
可移植性
在C语言中,只有int版本存在。
有关long int的等价函数参见ldiv。
有关long long int的等价函数参见lldiv。
用例
/* div example */
#include <stdio.h> /* printf */
#include <stdlib.h> /* div, div_t */
int main ()
{
div_t divresult;
divresult = div(38,5);
printf("38 div 5 => %d, remainder %d.\n", divresult.quot, divresult.rem);
return 0;
}
输出:
数据竞争
同时调用此函数是安全的,不会导致数据竞争。
异常(C++)
无抛出保证:此函数不抛出异常。
如果结果的任何一部分无法表示,则会导致未定义的行为。