dte*_*ech 19 c c++ modulo integer-division
可能重复:同时
划分和获取剩余?
是否可以在一个步骤中同时得到整数除法的商和余数,即不进行两次整数除法?
Joh*_*ing 24
div会这样做.参见参考和示例:
/* div example */
#include <stdio.h>
#include <stdlib.h>
int main ()
{
div_t divresult;
divresult = div (38,5);
printf ("38 div 5 => %d, remainder %d.\n", divresult.quot, divresult.rem);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
输出:
38 div 5 => 7, remainder 3.
Run Code Online (Sandbox Code Playgroud)
编辑:
C规范说:
The types declared are size_t and wchar_t (both described in 7.17),
div_t
which is a structure type that is the type of the value returned by the div function,
ldiv_t
which is a structure type that is the type of the value returned by the ldiv function, and
lldiv_t
which is a structure type that is the type of the value returned by the lldiv function.
Run Code Online (Sandbox Code Playgroud)
......但它没有说出定义div_t是什么.