我想知道在这里铸造是否是最好的解决方案:
这是函数原型:
void function(unsigned char * data)
这就是我打算使用它的方式(nSize
从中读取):
unsigned int nSize = 15;
function( (unsigned char*) &nSize);
假设函数原型是一成不变的,并且 nSize 必须是一个 int,是的,这对我来说是正确的。
是的,在你的情况下,演员似乎是必要的。
请注意,使用 C++ 风格的命名转换比 C 风格的转换更受欢迎。在你的情况下,reinterpret_cast
是正确的选择。请注意,这是一种危险行为,请参阅此处了解详细信息。
function(reinterpret_cast<unsigned char*>&nSize);