名前空間
変種
操作

fmin, fminf, fminl

提供: cppreference.com
< c‎ | numeric‎ | math
 
 
 
一般的な数学関数
関数
基本操作
(C99)
(C99)
(C99)
fmin
(C99)
(C99)
(C99)(C99)(C99)
指数関数
(C99)
(C99)
(C99)
(C99)
冪関数
(C99)
(C99)
三角関数と双曲線関数
(C99)
(C99)
(C99)
誤差関数とガンマ関数
(C99)
(C99)
(C99)
(C99)
最も近い整数
(C99)(C99)(C99)
(C99)
(C99)(C99)(C99)
浮動小数点操作関数
(C99)(C99)
(C99)
(C99)
分類
(C99)
(C99)
(C99)
(C99)(C99)
マクロ定数
 
ヘッダ <math.h> で定義
float       fminf( float x, float y );
(1) (C99およびそれ以降)
double      fmin( double x, double y );
(2) (C99およびそれ以降)
long double fminl( long double x, long double y );
(3) (C99およびそれ以降)
ヘッダ <tgmath.h> で定義
#define fmin( x, y )
(4) (C99およびそれ以降)
1-3) 2つの浮動小数点引数の小さい方を返します。 NaN は存在しないデータとみなされます (NaN と数値の間では、数値が選ばれます)。
4) 型総称マクロ。 いずれかの引数が long double 型であれば fminl が呼ばれます。 そうでなく、いずれかの引数が整数型または double 型であれば、 fmin が呼ばれます。 そうでなければ、 fminf が呼ばれます。

目次

[編集] 引数

x, y - 浮動小数点値

[編集] 戻り値

成功した場合、2つの浮動小数点値の小さい方を返します。 返される値は正確であり、いかなる丸めモードにも依存しません。

[編集] エラー処理

この関数は math_errhandling で規定されているいかなるエラー状況の対象でもありません。

処理系が IEEE 浮動小数点算術 (IEC 60559) をサポートしている場合、

  • 2つの引数の片方が NaN であれば、他方の引数が返されます。
  • どちらの引数も NaN であれば、 NaN が返されます。

[編集] ノート

この関数はゼロの符号に敏感であることは要求されていませんが、処理系によっては片方の引数が +0 で他方が -0 であれば -0 が返されることを追加で強制しています。

[編集]

#include <stdio.h>
#include <math.h>
 
int main(void)
{
    printf("fmin(2,1)    = %f\n", fmin(2,1));
    printf("fmin(-Inf,0) = %f\n", fmin(-INFINITY,0));
    printf("fmin(NaN,-1) = %f\n", fmin(NAN,-1));
}

出力例:

fmin(2,1)    = 1.000000
fmin(-Inf,0) = -inf
fmin(NaN,-1) = -1.000000

[編集] 参考文献

  • C11 standard (ISO/IEC 9899:2011):
  • 7.12.12.3 The fmin functions (p: 258)
  • 7.25 Type-generic math <tgmath.h> (p: 373-375)
  • F.10.9.3 The fmin functions (p: 530)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.12.12.3 The fmin functions (p: 239)
  • 7.22 Type-generic math <tgmath.h> (p: 335-337)
  • F.9.9.3 The fmin functions (p: 466)

[編集] 関連項目

(C99)
第1引数の浮動小数点が第2引数より小さいかどうか調べます
(関数) [edit]
(C99)(C99)(C99)
2つの浮動小数点の大きい方を判定します
(関数) [edit]