vs2022 c++ 实现UDP聊天室(解释最全)

 一、简介

         udp是面向报文的协议,它不保证消息的完整性,也不为消息提供超时或重发机制。但是,udp的优点是在性能方面比tcp好一些,因为它不建立连接,发送数据和接收数据都只需很少的资源。

二、UDP客户端

        实现原理:该程序使用了C++的socket编程,通过UDP协议在本地和远程服务器之间进行通信。用户可以发送和接收消息。当用户输入'q'时,程序会退出聊天。

#include <Winsock2.h>
#include <iostream>
#include <stdio.h>
#pragma comment (lib, "ws2_32.lib")

int Start_T() {
	//加载套接字库 必须不能省略
	WORD wVersionRequested;
	WSADATA wsaData;
	int err;

	wVersionRequested = MAKEWORD(1, 1);

	err = WSAStartup(wVersionRequested, &wsaData);//错误会返回WSASYSNOTREADY
	if (err != 0)
	{
		return 0;
	}

	if (LOBYTE(wsaData.wVersion) != 1 ||     //低字节为主版本
		HIBYTE(wsaData.wVersion) != 1)      //高字节为副版本
	{
		WSACleanup();
		return 0;
	}

	printf("server is operating!\n\n");

	//创建套接字
	SOCKET sockfd = socket(AF_INET, SOCK_DGRAM, 0);

	//定义一个ipv4存放本地信息
	SOCKADDR_IN myaddr 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值