基于UDP的windows网络Socket编程

window下 UDP socket编程 client.c //udp 不可靠,无连接 #include #include #pragma comment(lib,"ws2_32.lib") int main(int argc,char * argv[]) { WSADATA data;//这个结构被用来存储被WSAStartup函数调用后返回的Windows Sockets数据 SOCKET socketfd; 阅读详情

一、创建服务器端程序

#include <winsock2.h>
#include <stdio.h>

void main()
{
	WORD wVersionRequested;
	WSADATA wsaData;
	int err;

	wVersionRequested = MAKEWORD( 1, 1 );

	err = WSAStartup( wVersionRequested, &wsaData );
	if ( err != 0 ) {

		return;
	}

	if ( LOBYTE( wsaData.wVersion ) != 1 ||
		HIBYTE( wsaData.wVersion ) != 1 ) {

			WSACleanup( );
			return; 
	}
	//服务器端套接字
	SOCKET sockSrc = socket(AF_INET , SOCK_DGRAM , 0) ;

	//设置服务器端地址和端口号
	SOCKADDR_IN addrSrc ;
	addrSrc.sin_addr.S_un.S_addr = htonl(INADDR_ANY) ;
	addrSrc.sin_family = AF_INET ;
	addrSrc.sin_port = htons(6000) ;

	//把服务器端套接字与地址绑定
	bind(sockSrc , (SOCKADDR *)&addrSrc , sizeof(SOCKADDR)) ;

	//预设接受客户端地址
	SOCKADDR_IN addrClient ;
	int len = sizeof(SOCKADDR) ;
	char szRecv[100] ;

	recvfrom(sockSrc , szRecv , 100 , 0 , (SOCKADDR *)&addrClient , &len) ;
	printf("%s\n" , szRecv) ;

	//关闭套接字,清理
	closesocket(sockSrc) ;
	WSACleanup() ;

	system("pause") ;
}

二、创建客户端程序

#include <winsock2.h>
#include <stdio.h>

void main()
{
	WORD wVersionRequested;
	WSADATA wsaData;
	int err;

	wVersionRequested = MAKEWORD( 1, 1 );

	err = WSAStartup( wVersionRequested, &wsaData );
	if ( err != 0 ) {

		return;
	}

	if ( LOBYTE( wsaData.wVersion ) != 1 ||
		HIBYTE( wsaData.wVersion ) != 1 ) {

			WSACleanup( );
			return; 
	}
	//客户端套接字
	SOCKET sockClient = socket(AF_INET , SOCK_DGRAM , 0) ;

	//设置需要链接的服务器地址
	SOCKADDR_IN addrSrc ;
	addrSrc.sin_addr.S_un.S_addr = inet_addr("127.0.0.1") ;
	addrSrc.sin_family  = AF_INET ;
	addrSrc.sin_port = htons(6000) ;

	//发送信息
	sendto(sockClient , "hello" , strlen("hello") + 1, 0 , 
		   (SOCKADDR *)&addrSrc , sizeof(SOCKADDR)) ;

	//清理
	closesocket(sockClient) ;
	WSACleanup() ;

	//system("pause") ;
}


Windows Socket通信原理与实战详解 Windows Socket API(Winsock)是Windows平台下进行网络通信的核心接口,提供了一系列用于创建、配置和管理Socket的函数。理解Winsock API是掌握Windows网络编程的第一步。Winsock提供了多个关键函数用于Socket操作,以下是几个常用的函数:函数名功能描述socket()创建一个Socket描述符bind()将Socket绑定到本地地址listen()设置Socket为监听状态accept()接受客户端连接。 阅读详情

相关推荐

C#实现UDP通信的完整应用开发

是 .NET 框架中用于实现基于 TCP/IP 协议的网络通信的核心命名空间之一。它提供了丰富的类和接口,用于创建客户端和服务器端的通信逻辑。该命名空间的核心功能包括:实现底层的网络通信(如 TCP、UDP)提供同步与异步编程模型管理网络连接、数据发送与接收其中最核心的类是:类名作用说明Socket提供对网络通信的底层访问,支持多种协议(如 TCP、UDP)TcpClient简化 TCP 客户端通信,封装了 Socket 的细节。

weixin_42612804的博客 1127

Socket编程详解:从基本概念到实例应用(TCP|UDP C语言实例详解)

Socket编程详解:从基本概念到实例应用

深耕嵌入式领用多年, 致力于分享嵌入式领域技术! 2万+

windows平台下基于UDP的socket编程

windows下网络基于UDP的socket编程,代码简单,适合应付网络课程作业。

【socket】从计算机网络基础到socket编程——Windows && Linux C语言 + Python实现(TCP+UDP)

我只能说这篇文章无敌。

风高秋月白,雨霁晚霞红 2万+

Windows下基于socket多线程并发通信的实现

本文介绍了在Windows 操作系统下基于TCP/IP 协议Socket 套接口的通信机制以及多线程编程知识与技巧,并给出多线程方式实现多用户与服务端(C/S)并发通信模型的详细算法,最后展现了用C++编写的多用户与服务器通信的应用实例并附有程序。 关键词:Windows;套接字;多线程;并发服务器; Socket 是建立在传输层协议(主要是TCP 和UDP)上的一种套接字规范,最初由美国加州Berkley 大学提出,为UNIX 系统开发的网络通信接口,它定义了两台计算机之间通信的规范,socket 屏蔽了底层通信软件和具体操作系统的差异,使得任何两台安装了TCP 协议软件和实现了Socket 规范的计算机之间的通信成为可能,Socket 接口是TCP/IP 网络最为通用的应用接口,也是在Internet 上进行网络程序应用开发最通用的API[1],本文介绍了Socket通信的基本机制以及采用多线程技术实现并发通信的基本原理,并给出实例。

基于UDP的socket程序,多线程操作,windows下C语言

自己编的基于UDP的socket程序,收发一体,支持多线程操作

UDP_SOCKET编程实现

socket编程接口 认识`struct sockaddr`类 编写一个server服务 Client代码 查看启动结果 代码修正 1.获取内核分配给客户端的信息 2.修正不匹配ip不能访问的问题 不同机器之间的通信 利用xftp将udp_client传给wsl的ubuntu机器进行演示 现在模拟在windows下的udp_client代码:

m0_74146042的博客 1514

基于Java的高校校园点餐系统

本文介绍了一个基于Java技术开发的高校校园点餐系统,该系统以B/S结构为基础,采用MySQL作为数据库,实现了一个高效、便捷的在线点餐平台。系统主要面向三类用户:管理员、用户和食堂工作人员,提供包括用户管理、食堂管理、菜单管理、订单管理等在内的多项功能。通过系统的具体测试,验证了其可行性和有效性,为高校师生提供了一个科学化、系统化的点餐服务。高校校园点餐系统的开发和实现,不仅提高了校园餐饮服务的效率和质量,也为师生提供了一个更加便捷的点餐体验。

a632341031的博客 841

socket 编程(六) windows udp

socket

wjmasd的博客 930

Cadence IC618与Spectre231安装配置全攻略:License、环境变量与依赖检查

EDA工具部署中,License管理与环境变量隔离是核心难点。FlexLM作为通用授权机制,通过守护进程和端口配置实现工具授权;环境变量则控制工具路径与库加载顺序,避免版本冲突。合理配置可确保IC618与Spectre231稳定运行,提升仿真效率。典型应用场景包括模拟IC设计、高校实验室及企业级EDA环境。本文聚焦Cadence IC618与Spectre231的安装实践,详解License配置、环境隔离及依赖检查,助你快速搭建可靠设计环境。

weixin_28721917的博客 332

普通人如何上岸华为OD-面试总结

总共有3道算法题,100分值的两道,200分值的一道,不同的毕业院校和专业,通过机试的分值不一样,最少需要150分通过,提前和hr联系,了解自己需要多少分通过。重中之重:哪怕你是背的题库,也请你一定不要直接抄原来的,最好是变更下方法名,否则会判定你重复率过高,从而失去后面的面试机会(实在是不会做再用此方法,凑分数所用,面试官能看到你的代码,会影响你的面试评价)本人女,所以还问道了婚育计划,有对象这点可以说,没有问题,但是如果可以的话,生孩子的时间,可以给hr说这几年不考虑。如果说没有难题,直接就挂了。

weixin_47767264的博客 5460

【干货】Windows平台基于udp的socket网络编程开发

使用UDP进行windows平台下的socket网络编程,本人在vs 2019编译器上开发,语言C++,希望能为大家提供一些参考。 首先建立两个项目,分别称之为客户端和服务端,唯一的区别是服务端需要绑定IP和端口,客户端指明服务端的IP和端口,这样就可以通信啦。 首先是写一个简单的客户端发送字符串到服务端的程序,因为比较简单,直接上代码,其中的注释很详细,有不明白的小伙伴可以评论区或者私信~ UDP_Client.cpp #include <stdio.h> #include <tchar

Antrn 6703

飞牛fnNAS虚拟机开启OVS导致失联的解决

摘要:用户在使用飞牛NAS时发现开启OVS网络功能后导致NAS失联。通过多种尝试(包括开关OVS、更换系统版本、手工配置、更换网卡、处理器检查等)后发现,OVS启用状态下DHCP无法获取IP地址,手动设置IP可暂时恢复网络。但重启后问题依旧,初步判断为OVS功能存在bug。目前临时解决方案是在需要时手动开关OVS,或考虑其他虚拟化方案。用户计划后续探索替代方案,并等待官方修复该问题。

dgnankai的专栏 4339

TCP---UDP网络编程步骤 对于windows socket来说

zhangyulin54321的专栏 715

手把手教你学simulink实例--基于Simulink的航空航天器飞行轨迹规划与仿真详细介绍

航空航天器飞行轨迹规划是实现高效、安全和精确飞行的关键技术。通过Simulink进行航空航天器飞行轨迹规划与仿真,可以验证控制算法的有效性、优化飞行路径,并降低开发成本。以下是如何在MATLAB和Simulink中设计并仿真一个航空航天器飞行轨迹规划系统的详细步骤。通过上述步骤,我们成功设计并实现了基于Simulink的航空航天器飞行轨迹规划与仿真系统。该系统能够根据实时环境变化动态调整飞行轨迹,从而提高飞行效率、降低燃料消耗并提升安全性。

MHD0815的博客 391

NSIS教程(2): 传统用户界面(Classic UI)

NSIS教程: 《NSIS用户手册 中文版》 《NSIS图文教程集锦 - 轻狂志》 本文以一个完整的、传统界面的网易云音乐安装包的脚本为示例,来介绍NSIS传统用户界面的开发流程。 NSIS脚本 # 单行注释用井号"#"或分号";",跨行注释用可以用C/C++中注释语法。 # 使用!define定义一些常量(如安装包的版本号等) # 对常量或变量的引用可以使用如${PROD

while(1) { smile(); } 8万+

Windows平台UDP Socket编程实战:从基础到高性能网络通信

UDP(用户数据报协议)是一种无连接、不可靠但高效的网络传输协议,其核心原理在于面向数据报的通信模型,每个数据包独立传输且边界清晰。相比TCP的可靠连接,UDP具有更小的协议开销和更低的延迟,这使得它在实时性要求高的场景中展现出独特的技术价值。在视频流媒体、在线游戏、物联网设备通信和局域网服务发现等应用场景中,UDP能够有效避免TCP重传机制带来的延迟累积。Windows平台下的UDP Socket编程涉及Winsock库的特殊行为,例如Socket错误码处理(如WSAECONNRESET 10054)和缓

weixin_30788619的博客 371

MicroCap声学仿真介绍(四)-扬声器仿真

将“障板”模块放置到工作区,“Param:AREAm2=”是指的是障板孔的面积,一般可以输入喇叭的面积Sb;“Param:DISTm=”指的是测试麦克风与障板的距离,这里我们可以填入1米,小喇叭可以填入0.1m;此时工作区的电阻是竖直的,为了方便,我们需要将其变成水平的。其中,频率范围为20~20KHz,仿真点数为500个点,先仿真频响曲线和相位曲线,点击左上角的run,界面如下。鼠标单击工作区,弹出如下界面:在弹出的界面中输入“.define Re 3.82 “,点击”确定“按钮。

山无忧的博客 3005

Windows网络编程之(一)Socket阻塞模式(TCP和UDP)

TCP通信Server#include <Winsock2.h> #include <stdio.h>static const int PORT = 7777; static const int BUFFER_LENGTH = 128 ;bool InitWSA() ;int main() { if(!InitWSA()) { return -1 ; }

燈火闌珊處 5642

CloudCompare 和 PCL:点云网格化分析与处理

点云网格化是将点云数据转化为规则网格的过程,其主要思想是将离散的点云投影到一个平面上,然后对该平面进行划分,形成一系列小区域。在点云网格化方面,PCL 提供了各种算法和工具,可以实现高效的点云网格化操作。以上示例代码中,首先加载了输入的点云数据,然后通过设置合适的网格化算法参数,如搜索半径和最大三角形边长等,执行了网格化操作,最后将网格化结果保存到输出文件中。以上示例代码中,首先加载了输入的点云数据,然后通过设置合适的网格化参数,如分辨率等,执行了网格化操作,最后将网格化结果保存到输出文件中。

TechPulseZ的博客 1294

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

C++网络编程 Windows平台下 TCP和UDP协议编程

UDP和TCP是在进行网络编程时必不可少的重要协议之一。本文将详细介绍windows平台使用C++调用相关函数实现协议

z2501048766的博客 378

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

基于UDP(面向无连接)的socket编程

说明:本程序是基于windows socket的套接字库实现网络编程; 当WSAStartup函数调用成功后,在程序的最后都需要相应的调用WSACleanup函数 以便释放为该应用程序分配的资源,终止对WinSock动态库的使用。基于UDP的服务器端流程 创建套接字(socket) 将套接字和IP地址、端口号绑定在一起(bind) 等待客户端发起数据通信(recvfrom/recvto) 关

Keep Moving~ 1万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Windows网络编程之(二)Socket通信非阻塞模式Select(TCP和UDP)

阻塞式的Socket很容易理解,但是使用起来非常别扭。Windows提供了选择(Select)I/O模型,进行异步Socket通信. Select模型 int select( _In_ int nfds,//忽略. 此参数为了与Berkeley sockets兼容. _Inout_ fd_set *readfds,//检查可读性fd_set指针. _Inout_ f

燈火闌珊處 5922

2 Windows网络编程

C/S模式是指Client/Server模式(客户端/服务器模式)。它是一种计算机架构模式,用于描述分布式计算中的两个主要组成部分:客户端和服务器。客户端是指发起请求的用户或应用程序,它向服务器发送请求并等待服务器的响应。服务器是指接受客户端请求,并提供相应服务或资源的中央计算机或系统。

qq_40489522的博客 1382

socket编程(UDP)

认识端口号socket编程接口UDP网络程序查看已经运行的服务服务器读取数据Client客户端根据UDP客户端服务端实现简单的英译汉的网络字典server.ccclient.cc实现ChatServer聊天室Route.hpp(路由)windows客户端与linux服务端交汇windows客户端。

分享C/C++/Linux/网络/数据库/数据结构 1350

c++ 网络编程(一)TCP/UDP windows/linux 下入门级socket通信 客户端与服务端交互代码

  原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/9601511.html       c++ 网络编程(一)TCP/UDP  入门级客户端与服务端交互代码     网络编程和套接字   网络编程其实和我们计算机上的文件读取操作很类似,通俗地讲,网络编程就是编写程序使两...

weixin_44250058的博客 514
上一篇: MFC文档的串行化
下一篇: 基于TCP的window的Socket编程
知行且执行
博客等级 码龄14年 38粉丝 73原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值