文章目录
前言
- 前言
- 一、SOCKET 网络套接字初始化
- 二、SOCKET 网络套接 读取远程端 ( Android 模拟器 ) 信息
- 三、SOCKET 网络套接 向远程端 ( Android 模拟器 ) 写出数据
本篇博客重点分析 CNetwork
网络模块 ;
在 CNetwork::CNetwork()
构造函数中 , 初始化套接字 , 初始化时设置 无效套接字 INVALID_SOCKET
;
CNetwork::CNetwork()
{
// 初始化套接字 , 初始化时设置 无效套接字 INVALID_SOCKET
m_server = INVALID_SOCKET;
}
在初次连接时 , 判断当前套接字是否是无效的 ,
- 如果当前套接字是无效的 , 则初始化网络 , 建立网络连接 ;
- 如果当前套接字不是无效的 , 则关闭当前套接字 , 然后设置为无效套接字 ;
bool CNetwork::WaitClientOnline()
{
/* 等待客户端联网时 , 判断当前套接字是否是无效的 ,
如果当前套接字是无效的 , 则初始化网络 , 建立网络连接
如果当前套接字不是无效的 , 则关闭当前套接字 , 然后设置为无效套接字
*/
if (m_server != INVALID_SOCKET) {
closesocket(m_server);
m_server = INVALID_SOCKET;
}
int ret = 0;
sockaddr_in server;
BOOL bsocket;
m_server = WSASocket(AF_INET, SOCK_STREAM, 0, NULL, 0, WSA_FLAG_OVERLAPPED);
bsocket = TRUE;
server.sin_family = AF_INET;
/* 连接本机 IP 地址 , 如果是与真机连接 , 这里设置手机在局域网的 IP 地址 */
server.sin_addr.s_addr = inet_addr("127.0.0.1");
/* 自定义端口 , 手机端 与 PC 端约定一致即可 , 1024 ~ 65535 范围 , 1024 以下是系统使用的端口 */
server.sin_port = htons(9527);
/* 正式连接的方法 */
ret = connect(m_server, (const struct sockaddr*)&server, sizeof(server));
if (ret
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?