Vic*_*lin 2 c++ pointers memory-management bytearray
我有BYTE指针.例如,此BYTE数组的长度为10.如何从3位BYTE数组中读取4个字节?
现在我这样做了
BYTE *source = "1234567890\0";
BYTE* tmp = new BYTE[4+1]();
for(int i=0; i<4; i++)
{
tmp[i] = source[i+3];
}
Run Code Online (Sandbox Code Playgroud)
1)
std::vector<BYTE> tmp1(source + 3, source + 7);
Run Code Online (Sandbox Code Playgroud)
2)
BYTE tmp[5];
std::copy(source + 3, source + 7, tmp);
Run Code Online (Sandbox Code Playgroud)
3)
BYTE tmp2[5];
memcpy(tmp, source + 3, 4 * sizeof(source[0]));
Run Code Online (Sandbox Code Playgroud)