0

我想问为什么我必须使用 &buffer 而不仅仅是缓冲区,为什么我要传递地址来重新解释强制转换或类型转换。谢谢。

DWORD buffer;
std::ifstream openFile("xxxxx",std::ios::in|std::ios::binary);
std::ofstream writeFile("xxxxx",std::ios::out|std::ios::binary);


while(!openFile.eof())
{
    openFile.read(reinterpret_cast<char*>(&buffer),sizeof(DWORD));
    writeFile.write((char *)&buffer,sizeof(DWORD));
}
4

1 回答 1

1

查看此指针参考。您所拥有的是一个变量,在 a 前面&告诉 c++ 您要引用数据的地址位置(称为数据指针)。这是创建高效代码的有效方法,因为您不必在将数据传递给函数时复制数据,您只需告诉函数它所在的位置,以便它可以根据需要引用它。

干杯

于 2013-09-29T23:30:21.703 回答