繁体   English   中英

将float *或其他指针转换为unsigned char *

[英]Converting a float* or other pointer to unsigned char*

我有以下函数,该函数将字节数组作为浮点数据的unsigned char*

void expectsFloatData(unsigned char* floatData, int floatCount)
{
    //Does something
    memset(floatData, 0, floatCount * sizeof(float));
}

float data[4];
expectsFloatData(???, 4);

这是否证明使用reinterpret_cast<unsigned char*>(data);
由于我只是更改了编译器所见的变量类型,因此无需担心它将如何在实际字符(小尾数与大尾数以及其他平台特定的东西)的上下文中解释数据。浮点数的字节仍然存在,对吗?

是的, reinterpret_cast是此处的适当工具。 如果功能参数是float*void* (例如, memset使用void* ,以便能够接受和覆盖任何类型的缓冲区),那就更好了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM