¿Por qué no me funciona esto para imprimir un float en dígitos hexadecimales?
#include <stdio.h>
int main()
{
float f = 5.5;
printf("%X\n", f);
return 0;
}
Debería de salir (códificación IEEE 754): 80 B0 00 00
y da: DAC98408
Gracias anticipadas
Porque no estás usando el especificador de formato correcto:
Specifier Output Example
a Hexadecimal floating point, lowercase -0xc.90fep-2
A Hexadecimal floating point, uppercase -0XC.90FEP-2
x Unsigned hexadecimal integer 7fa
X Unsigned hexadecimal integer (uppercase) 7FA
Fuente : http://www.cplusplus.com/reference/clibrary/cstdio/printf/