名前空間
変種
操作

float_t, double_t

提供: cppreference.com
< c‎ | numeric‎ | math
 
 
 
一般的な数学関数
関数
基本操作
(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)
(C99)
float_tdouble_t
(C99)(C99)
マクロ定数
 
ヘッダ <math.h> で定義
typedef /*implementation defined*/ float_t
(C99およびそれ以降)
typedef /*implementation defined*/ double_t
(C99およびそれ以降)

float_t および double_t はそれぞれ少なくとも float および double と同じまたはそれ以上の幅を持つ浮動小数点型です。 double_t は少なくとも float_t と同じまたはそれ以上の幅を持ちます。 FLT_EVAL_METHOD の値により float_t および double_t の値が決定されます。

FLT_EVAL_METHOD 説明
0 float_t および double_t はそれぞれ float および double と同等です
1 float_t および double_t は両方とも double と同等です
2 float_t および double_t は両方とも long double と同等です
それ以外 float_t および double_t は両方とも処理系定義です

[編集]

#include <float.h>
#include <math.h>
#include <stdio.h>
 
int main(void)
{
    printf("%d\n", FLT_EVAL_METHOD);
    printf("%zu  %zu\n", sizeof(float),sizeof(float_t));
    printf("%zu  %zu\n", sizeof(double),sizeof(double_t));
    return 0;
}

出力例:

0
4  4
8  8

[編集] 参考文献

  • C11 standard (ISO/IEC 9899:2011):
  • 7.12 Mathematics <math.h> (p: 231)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.12 Mathematics <math.h> (p: 212)

[編集] 関連項目

浮動小数点数値の分類C++リファレンス