Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      float_t, double_t

      From cppreference.com
      <c‎ |numeric‎ |math
       
       
       
      Common mathematical functions
      Functions
      Basic operations
      (C99)
      (C99)
      (C99)
      (C99)(C99)(C99)(C23)
      Maximum/minimum operations
      (C99)
      (C99)
      Exponential functions
      (C23)
      (C99)
      (C99)
      (C23)
      (C23)

      (C99)
      (C99)(C23)
      (C23)
      (C23)
      Power functions
      (C99)
      (C23)
      (C23)

      (C99)
      (C23)
      (C23)
      Trigonometric and hyperbolic functions
      (C23)
      (C23)
      (C23)
      (C23)
      (C99)
      (C99)
      (C99)
      Nearest integer floating-point
      (C99)(C99)(C99)
      (C23)(C23)(C23)(C23)
      Floating-point manipulation
      (C99)(C99)
      (C99)(C23)
      (C99)
      Narrowing operations
      (C23)
      (C23)
      (C23)
      (C23)
      (C23)
      (C23)
      Quantum and quantum exponent
      Decimal re-encoding functions
      Total order and payload functions
      Classification
      Error and gamma functions
      (C99)
      (C99)
      (C99)
      (C99)
      Types
      float_tdouble_t
      (C99)(C99)
      Macro constants
      Special floating-point values
      (C99)(C23)
      Arguments and return values
      Error handling
      Fast operation indicators
       
      Defined in header<math.h>
      typedef/* implementation-defined */ float_t
      (since C99)
      typedef/* implementation-defined */ double_t
      (since C99)

      The typesfloat_t anddouble_t are floating types at least as wide asfloat anddouble, respectively, and such thatdouble_t is at least as wide asfloat_t. The value ofFLT_EVAL_METHOD determines the types offloat_t anddouble_t.

      FLT_EVAL_METHOD Explanation
      0float_t anddouble_t are equivalent tofloat anddouble, respectively
      1 bothfloat_t anddouble_t are equivalent todouble
      2 bothfloat_t anddouble_t are equivalent tolongdouble
      other bothfloat_t anddouble_t are implementation defined

      [edit]Example

      Run this code
      #include <float.h>#include <math.h>#include <stdio.h> #define SHOW(expr) printf("%s = %d\n", #expr, (int)(expr)) int main(){    SHOW(FLT_EVAL_METHOD);    SHOW(sizeof(float));    SHOW(sizeof(float_t));    SHOW(sizeof(double));    SHOW(sizeof(double_t));}

      Possible output:

      FLT_EVAL_METHOD = 1sizeof(float) = 4sizeof(float_t) = 8sizeof(double) = 8sizeof(double_t) = 8

      [edit]References

      • C23 standard (ISO/IEC 9899:2024):
      • 7.12 Mathematics <math.h> (p: TBD)
      • C17 standard (ISO/IEC 9899:2018):
      • 7.12 Mathematics <math.h> (p: TBD)
      • 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)

      [edit]See also

      specifies in what precision all arithmetic operations are done
      (macro constant)
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=c/numeric/math/float_t&oldid=180104"

      [8]ページ先頭

      ©2009-2025 Movatter.jp