- Denormalized float number is detected as NaN. Why?
- #include <stdio.h>
- #include <string.h>
- int main(void) {
- int i = 0x00300000;
- float f = 0;
- if (sizeof(f) != sizeof(i)) {
- printf ("Urk!n");
- return 1;
- }
- memcpy (&f, &i, sizeof(f));
- printf ("%.50fn", f);
- if (f == f)
- puts ("Equal");
- else
- puts ("Not equal");
- return 0;
- }
- 0.00000000000000000000000000000000000000440810381558
- Equal