深入探究UDP与TCP客户端-服务器编程:从原理到实践
1. UDP客户端编程
UDP(User Datagram Protocol)是一种无连接的传输协议,在UDP客户端编程中,我们需要包含以下头文件:
#include <array> #include <string> #include <iostream> #include <stdexcept> #include <unistd.h> #include <string.h> #include <sys/socket.h> #include <netinet/in.h>为了利用RAII(Resource Acquisition Is Initialization)特性,我们创建一个myclient类:
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 =