Convert ieee 754 float to hex mit c - printf

Idealerweise würde der folgende Code einen Gleitkommawert in der IEEE 754-Darstellung annehmen und ihn in hexadezimales @ konvertiere

void convert() //gets the float input from user and turns it into hexadecimal
{
    float f;
    printf("Enter float: ");
    scanf("%f", &f);
    printf("hex is %x", f);
}

Ich bin mir nicht sicher, was los ist. Es wandelt die Zahl in eine hexadezimale Zahl um, aber eine sehr falsche.

123.1443 gives 40000000
43.3     gives 60000000
8        gives 0

so es macht etwas, ich bin mir einfach nicht sicher was.

Hilfe wäre dankbar

Antworten auf die Frage(16)

Ihre Antwort auf die Frage