float_t, double_t
Defined in header <math.h>
|
||
|---|---|---|
|
(since C99) | |
|
(since C99) |
The types float_t and double_t are floating types at least as wide as float and double, respectively, and such that double_t is at least as wide as float_t. The value of FLT_EVAL_METHOD determines the types of float_t and double_t.
| FLT_EVAL_METHOD | Explanation |
|---|---|
0
|
float_t and double_t are equivalent to float and double, respectively
|
1
|
both float_t and double_t are equivalent to double
|
2
|
both float_t and double_t are equivalent to long double
|
other
|
both float_t and double_t are implementation defined
|
Example
#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;
}
Possible output:
0
4 4
8 8
References
C11 standard (ISO/IEC 9899:2011):
- 7.12 Mathematics (p: 231)
C99 standard (ISO/IEC 9899:1999):
- 7.12 Mathematics (p: 212)
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/c/numeric/math/float_t