recvfrom问题
- C/C++ code
//这recvfrom出什么错?怎么会提示//m_Server.exe 中的 0x01373671 处有未经处理的异常: 0xC0000005: 读取位置 0x000000bc 时发生访问冲突DWORD Cm_ServerDlg::Recv(){ char RecvBuf[200]; ZeroMemory(RecvBuf, 200); sockaddr_in AddrClient; int AddrLen = sizeof(sockaddr); while(true){ recvfrom(m_socket, RecvBuf, 200, 0, (sockaddr*)&AddrClient, &AddrLen); } return 0;}
[解决办法]
出现你的错误时点击重试按钮,查看哪里访问了非法内存区域,或者可以查看函数调用栈。
[解决办法]
内存错误,越界或读野指针了
[解决办法]
首先确保m_socket有效
其次是不是char RecvBuf[200]; 定义小了?接收到的数据包长度超过了200字节
[解决办法]
- C/C++ code
int AddrLen = sizeof(sockaddr_in);