typedef struct __WSABUF {
  u_long      len;
  char FAR    *buf;
} WSABUF, FAR * LPWSABUF;int WSPAPI WSPSend(LPWSABUF lpBuffers)
{//请问下面的代码有没有什么问题? LPWSABUF *mybuffer = new LPWSABUF();
 memcpy(lpBuffers,mybuffer,sizeof(WSABUF));//我的意图是想得到一个lpBuffers的拷贝}

解决方案 »

  1.   

    int WSPAPI WSPSend(LPWSABUF lpBuffers)
    {//请问下面的代码有没有什么问题? LPWSABUF *mybuffer = new WSABUF ;
     memcpy(lpBuffers,mybuffer,sizeof(WSABUF));//我的意图是想得到一个lpBuffers的拷贝}
      

  2.   

    第一: 要查 sizeof 能不能正确返回你的数据区的大小
    第二: 要强制说明两个参数据为 (void*)
      

  3.   

    我将代码修改了,编译通过但仍有错误非法操作。
    LPWSABUF mybuffer = new WSABUF;
    memcpy((void*)lpBuffers,(void*)mybuffer,sizeof(lpBuffers->len)+lpBuffers->len);
      

  4.   

    memcpy(mybuffer, lpBuffers ...