我有一个二进制数组char buffer[N];,其中包含两个字节,在其开头被解释为unsigned short,并且我正在通过执行来提取它们
unsigned short size= 0;
memcpy((char *) &size, buffer, sizeof(unsigned short));
Run Code Online (Sandbox Code Playgroud)
但是,我想为此使用std :: copy.这可能吗?
尝试过像
std::copy(buffer, buffer+sizeof(unsigned short), (char *) &size);
Run Code Online (Sandbox Code Playgroud)
编译时导致各种错误..
编辑:对不起,我赶时间忘了:这是在使用gcc 4.4.3的Ubuntu GNU/Linux系统上.错误消息是Error: Invalid conversion from ‘char*’ to ‘char’.
c++ ×1