我想知道在这里投射是否是最好的解决方案:
这是函数原型:
void function(unsigned char * data)
我打算使用它(nSize
被读取):
unsigned int nSize = 15;
function( (unsigned char*) &nSize);
答案 0 :(得分:1)
假设函数原型是一成不变的,nSize必须是一个int,是的,看起来对我来说是正确的。
答案 1 :(得分:1)
是的,在你的情况下,演员似乎是必要的。
请注意,使用C ++风格的名为cast比C风格的强制转换更受欢迎。在您的情况下,reinterpret_cast
是正确的选择。请注意,这是一种危险行为,有关详细信息,请参阅here。
function(reinterpret_cast<unsigned char*>&nSize);