Linux网络编程——基于UDP协议的简易聊天室
0.关注博主有更多知识操作系统入门知识合集
目录1.UDP服务端1.1消息转发的实现2.UDP客户端3.效果展示1.UDP服务端使用C、C++混编的方式在Linux环境下实现一个简单的UDP服务端。那么我们先看代码,然后逐步分析:
//udpServer.hpp#pragmaonce#include#include#include#include/*网络必要的头文件*/#include#include#include#include/*其他操作系统接口*/#includenamespaceserver{usingnamespacestd;enum{SOCKET_ERROR=1,START_ERROR,BIND_ERROR};typedeffunctionfunc_t;classudpServer{public:/*服务器不需要绑定任何IP!*绑定默认的0.0.0.0即可*绑定了一个指定的IP之后,只能接收到指定IP的客户端的数据*/udpServer(constfunc_t&func,constuint16_t&port,conststring&ip=defaultIp):_func(func),_port(port),_ip(ip),_socketFd(-1){/*以IP协议、数据报的形式打开文件*也就是以UDP协议打开网络文件*如果打开失败,说明无法进行网络通信,程序退出*/_socketFd=socket(AF_INET,SOCK_DGRAM,0);if(_socketFd==-1){cerr