UDP与TCP客户端服务器编程示例详解
1. UDP客户端逻辑
UDP(User Datagram Protocol)是一种无连接的传输协议,下面详细介绍UDP客户端的实现逻辑。
1.1 所需头文件
#include <array> #include <string> #include <iostream> #include <stdexcept> #include <unistd.h> #include <string.h> #include <sys/socket.h> #include <netinet/in.h>1.2 客户端类定义
使用类来创建客户端,利用RAII(资源获取即初始化)原则管理资源。
class myclient { int m_fd{}; struct sockaddr_in m_addr{}; public: // 构造函数 explicit myclient(uint16_t port) { if (m_fd = ::socket(AF_INET, SOCK_DGRAM, 0); m_fd == -1) { throw std::runtime_error(strerror(errno)); } m_addr.sin_family = AF_INET;