最終更新日時: 2025年07月14日 20時54分35秒 (JST)
Koichi Murase が更新

履歴 編集

type-alias
<cmath>

# std::float_t(C++11)

    namespace std {
      using float_t = floating-type;
    }

## 概要

`float` と同じかそれより広い範囲の値を持つ浮動小数点数型を表す。

`FLT_EVAL_METHOD` が 0 のとき `float`, 1 のとき `double`, 2 のとき `long double`, それ以外の場合は実装依存。

## 例

    #include <cmath>
    #include <iostream>
    int main() {
        std::float_t num = 1.010;
        std::cout << num << std::endl;
    }

## 出力例

    1.01

## バージョン

### 言語

- C++11

### 処理系

- Clang:
- GCC:
- ICC:
- Visual C++: 2013 ✅, 2015 ✅, 2017 ✅, 2019 ✅, 2022 ✅
  - 2013, 2015では、常に`float`の別名。
  - 2017以降で、ターゲットのCPUアーキテクチャが`x86`以外である場合、`float`の別名。
  - 2017以降で、ターゲットのCPUアーキテクチャが`x86`で、SSE2を使用する場合（`/arch:SSE2`以上のコンパイラオプション）、`float`の別名。
  - 2017以降で、ターゲットのCPUアーキテクチャが`x86`で、`/fp:fast`コンパイラオプションが指定されている場合、`float`の別名。
  - 2017以降で、ターゲットのCPUアーキテクチャが`x86`で、SSE2を使用せず（`/arch:IA32`や`/arch:SSE`コンパイラオプション）、`/fp:fast`コンパイラオプションが指定されていない場合、`long double`の別名。