函式
<cstdlib>

div

div_t div (int numer, int denom);
 div_t div (     int numer,      int denom);ldiv_t div (long int numer, long int denom);
  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);
整數除法
div_tldiv_tlldiv_t 型別的結構體形式,返回 numer 除以 denom (numer/denom) 的整數商和餘數。該結構體有兩個成員:quotrem

引數

被除數
被除數。
除數
除數。

返回值

結果以在 <cstdlib> 中定義的結構體透過值返回,該結構體有兩個成員。對於 div_t,這兩個成員(順序不定)是:
1
2
int quot;   // quotient
int rem;    // remainder 

可移植性

在 C 語言中,只存在 int 版本。
對於 long int 等效版本,請參見 ldiv
對於 long long int 等效版本,請參見 lldiv

示例

1
2
3
4
5
6
7
8
9
10
11
/* 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;
}

輸出

38 div 5 => 7, remainder 3.


資料競爭

併發呼叫此函式是安全的,不會導致資料競爭。

異常 (C++)

無丟擲保證:此函式不會丟擲異常。

如果結果的任何一部分無法被表示,將導致未定義行為

另見