ldiv
長整数型 (long) の商と剰余を計算します。
ldiv_t ldiv(
long int numer,
long int denom
);
パラメーター
numer
分子。denom
分母。
戻り値
商と剰余で構成される ldiv 型の構造体を返します。
解説
ldiv 関数は、numer を denom で割った商と剰余を計算します。 商の符号は、算術上の商の符号と同じです。 商の絶対値は、算術的な商の絶対値より小さい、最大の整数です。 分母が 0 の場合、プログラムは終了し、エラー メッセージが表示されます。 ldiv 関数は、ldiv の引数および返される構造体のメンバーがすべて long int 型である点を除いて、div 関数と同じです。
ldiv_t 構造体は、STDLIB.H で定義され、商 long int quot、剰余 long int rem から構成されます。
必要条件
ルーチン |
必須ヘッダー |
---|---|
ldiv |
<stdlib.h> |
互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。
ライブラリ
C ランタイム ライブラリのすべてのバージョン。
使用例
// crt_ldiv.c
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
int main( void )
{
long x = 5149627, y = 234879;
ldiv_t div_result;
div_result = ldiv( x, y );
printf( "For %ld / %ld, the quotient is ", x, y );
printf( "%ld, and the remainder is %ld\n",
div_result.quot, div_result.rem );
}
出力
For 5149627 / 234879, the quotient is 21, and the remainder is 217168
同等の .NET Framework 関数
該当なし標準 C 関数を呼び出すには、PInvoke を使用します。詳細については、「プラットフォーム呼び出しの例」を参照してください。