Defined in header <math.h>  |  ||
|---|---|---|
 #define INFINITY /*implementation defined*/  |  (since C99) | 
If the implementation supports floating-point infinities, the macro INFINITY expands to constant expression of type float which evaluates to positive or unsigned infinity.
If the implementation does not support floating-point infinities, the macro INFINITY expands to a positive value that is guaranteed to overflow a float at compile time, and the use of this macro generates a compiler warning.
The style used to print an infinity is implementation defined.
Show style used to print an infinity and IEEE format.
#include <stdio.h>
#include <math.h>
#include <stdint.h>
#include <inttypes.h>
#include <string.h>
 
int main(void)
{
    double f = INFINITY;
    uint64_t fn; memcpy(&fn, &f, sizeof f);
    printf("INFINITY:   %f %" PRIx64 "\n", f, fn);
}Possible output:
INFINITY: inf 7ff0000000000000
|  
 (C99)   |   checks if the given number is infinite  (function macro)  | 
|  
 (C99)(C99)   |   indicates value too big to be representable (infinity) by float, double and long double respectively (macro constant)  | 
 C++ documentation for INFINITY  | 
|
    © cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
    https://en.cppreference.com/w/c/numeric/math/INFINITY