我使用TMemoryStream
类及其WriteBuffer
方法将数据写入流。我需要写入和读取int
变量
void __fastcall WriteBuffer(const void *Buffer, int Count)
void __fastcall ReadBuffer(void *Buffer, int Count)
下面的代码是否正确?
写:
int i = 5;
stream->WriteBuffer((void*)&i, sizeof(int));
阅读:
stream->ReadBuffer((void*)&i, sizeof(int));
下面的代码是否正确?
是的。虽然类型强制转换是不必要的,因为任何指针都可以传递给void*
(当然要考虑const
的正确性):
int i = 5;
stream->WriteBuffer(&i, sizeof(int));
int i;
stream->ReadBuffer(&i, sizeof(int));