浮点数转十六进制输出

681 阅读1分钟

本文只是自己的学习笔记, 不喜勿喷....

浮点数转十六进制

float 转 十六进制

void gf_float2HEX(float f) {
    
    union uuf {
        float f;
        char s[4];
    } uf;
    uf.f = f;
    printf("0x");
    
    for (int i = 3; i >= 0; i--) {
        printf("%02x", 0xff & uf.s[i]);
    }
    
    printf("\n");
}

double 转 十六进制

void gf_double2HEX(double d) {
    
    union uud {
        double d;
        char s[8];
    } ud;
    ud.d = d;
    printf("0x");
    
    for (int i = 7; i >= 0; i--) {
        printf("%02x", 0xff & ud.s[i]);
    }
    
    printf("\n");
}