我有一个双.
double d
Run Code Online (Sandbox Code Playgroud)
不幸的是,它实际上包含一个浮点数,最后4个字节.(原因很复杂,无法控制).所以内存看起来像这样.
0x0000000012345678
Run Code Online (Sandbox Code Playgroud)
我需要提取最后4个字节并将它们存储在浮点数中.我尝试了一些不同的东西,但到目前为止我的最好结果是
float f = *(((float*) &d)) + 1);
Run Code Online (Sandbox Code Playgroud)
获取d的双指针,转换为浮点指针,添加4个字节,取消引用.
有没有更好的办法?