建立套接字,用Receive接收,为什么小弟我还没发送,就能接收到很大的负数,好象是地址

建立套接字,用Receive接收,为什么我还没发送,就能接收到很大的负数,好象是地址。
char   *buff1[256];

                  //接收数据
m_ReceiveSocket.Create(3550,SOCK_DGRAM);
m_ReceiveSocket.Receive(buff1,256);

但我用sendto发送的的数据却接收不到,为什么啊?

------解决方案--------------------
class MySocket : public CAsyncSocket
{
public:
BOOL m_bConnected; //是否连接
UINT m_nLength; //消息长度
char m_buffer[4096]; //消息缓冲区
CGameClientDlg *m_pDlg;

MySocket(CGameClientDlg *dlg)
{
m_pDlg = dlg;
m_nLength = 0;
memset(m_buffer,0,sizeof(m_buffer));
m_bConnected = FALSE;
}

~MySocket()
{
if(m_hSocket != INVALID_SOCKET)
Close();
}

void OnConnect(int nErrorCode)
{
if (nErrorCode == 0)
{
m_bConnected = TRUE;
}
else
{
AfxMessageBox( "connect error ");
PostQuitMessage(0);
}
CAsyncSocket::OnConnect(nErrorCode);
}

void OnReceive(int nErrorCode)
{
m_nLength = Receive(m_buffer, sizeof(m_buffer), 0);
char *_buf = new char[m_nLength];
memcpy(_buf, m_buffer, m_nLength);
memset(m_buffer, 0, sizeof(m_buffer));
m_pDlg-> ProcessOnReceive(_buf);
delete _buf;

CAsyncSocket::OnReceive(nErrorCode);
}

void OnSend(int nErrorCode)
{
//发送完成以后清0
CAsyncSocket::OnSend(nErrorCode);
}

void OnClose(int nErrorCode)
{
}
};