div - ライブラリコールの説明 - Linux コマンド集 一覧表
名前
div, ldiv, lldiv, imaxdiv - integer 型の割算の商と余りを計算する
書式
#include <stdlib.h>
div_t div(int numerator, int denominator);
ldiv_t ldiv(long numerator, long denominator);
lldiv_t lldiv(long long numerator, long long denominator);
#include <inttypes.h>
imaxdiv_t imaxdiv(intmax_t numerator, intmax_t denominator);
説明
div () 関数は numerator /denominator の値を計算する。 商と余りは、 quot (商) と rem (余り) という名前の 2 つの integer 型メンバを含む div_t という構造体の中に返される (メンバの順番は不定である)。 商は 0 に近い方に丸められる。 結果は quot *denominator +rem = numerator を満たす。
ldiv (), lldiv (), imaxdiv () 関数は同様な動作をし、 上に示した型の数値を割算して、上に示した名前の構造体に結果を返す。 どの場合でもフィールド quot と rem は、 関数の引き数と同じ型である。
返り値
div_t (などの) 構造体。
例
div_t q = div(-5, 3);を計算すると、q.quot と q.rem はそれぞれ -1 と -2 になる。
準拠
SVr4, 4.3BSD, C89. 関数 lldiv () と imaxdiv ()は C99 に追加された。