共用方式為


div

計算商數和兩個整數值的餘數。

div_t div( 
   int numer,
   int denom 
);
ldiv_t div(
   long numer,
   long denom
); /* C++ only */ 
lldiv_t div(
   long long numer,
   long long denom
); /* C++ only */

參數

  • numer
    分子。

  • denom
    分母。

傳回值

使用 int 型別呼叫 div,傳回一個型別 div_t 的結構 ,包含這個商數和餘數。 多載的傳回值與型別 long 之引數為 ldiv_t。 div_t 和 ldiv_t 皆在 STDLIB.H. 中定義。

備註

div 函式會將 denom 除以 numer,因此計算其商數和餘數。 div_t 結構包含商數、int quot 和餘數 int rem。 商數的符號與數學商數的符號相同。 其絕對值是小於數學商數絕對值的最大整數。 如果分母為 0,則程式會終止並出現錯誤訊息。

取得型別 long 或 long long 引數的多載對 C++ 程式碼才可供使用。 包含成員 long quot 和 long rem 的傳回型別 ldiv_t,及包含成員 long long quot 和 long long rem 的傳回型別 lldiv_t,其與div_t 的成員有相同的意義。

需求

常式

必要的標頭

div

<stdlib.h>

如需其他相容性資訊,請參閱 相容性

範例

// crt_div.c
// arguments: 876 13

// This example takes two integers as command-line
// arguments and displays the results of the integer
// division. This program accepts two arguments on the
// command line following the program name, then calls
// div to divide the first argument by the second.
// Finally, it prints the structure members quot and rem.
//

#include <stdlib.h>
#include <stdio.h>
#include <math.h>

int main( int argc, char *argv[] )
{
   int x,y;
   div_t div_result;

   x = atoi( argv[1] );
   y = atoi( argv[2] );

   printf( "x is %d, y is %d\n", x, y );
   div_result = div( x, y );
   printf( "The quotient is %d, and the remainder is %d\n",
           div_result.quot, div_result.rem );
}
  

.NET Framework 對等用法

不適用。若要呼叫標準 C 函式,請使用 PInvoke。如需詳細資訊,請參閱平台叫用範例

請參閱

參考

浮點支援

ldiv、lldiv

imaxdiv