为了账号安全,请及时绑定邮箱和手机立即绑定

请问该如何使用windows网络编程select?

/ 猿问

请问该如何使用windows网络编程select?

至尊宝的传说 2019-07-02 10:06:53

如何使用windows网络编程select


查看完整描述

4 回答

?
慕斯709654

Socket实际在计算机中提供了一个通信端口,可以通过这个端口与任何一个具有Socket接口的计算机通信。应用程序在网络上传输,接收的信息都通过这个Socket接口来实现。

查看完整回答
反对 回复 2019-07-14
?
慕的地8271018

在windows下用C语言如何实现socket网络编程,需要用到以下头文件和库:

  1. 头文件    winsock2.h,

  2. 静态库文件    Ws2_32.lib

  3. 动态DLL文件    Ws2_32.dll

写一个UDP发送程序的步骤如下:

1.         用WSAStartup函数初始化Socket环境;

2.         用socket函数创建一个套接字;

3.         用setsockopt函数设置套接字的属性,例如设置为广播类型;很多时候该步骤可以省略;

4.         创建一个sockaddr_in,并指定其IP地址和端口号;

5.         用sendto函数向指定地址发送数据,这里的目标地址就是广播地址;注意这里不需要绑定,即使绑定了,其地址也会被sendto中的参数覆盖;若使用send函数则会出错,因为send是面向连接的,而UDP是非连接的,只能使用sendto发送数据;

6.         用closesocket函数关闭套接字;

7.         用WSACleanup函数关闭Socket环境。

与之类似,一个UDP接收程序的步骤如下,注意接收方一定要bind套接字:

1.         用WSAStartup函数初始化Socket环境;

2.         用socket函数创建一个套接字;

3.         用setsockopt函数设置套接字的属性,例如设置为广播类型;

4.         创建一个sockaddr_in,并指定其IP地址和端口号;

5.         用bind函数将套接字与接收的地址绑定起来,然后调用recvfrom函数或者recv接收数据; 注意这里一定要绑定,因为接收报文的套接字必须在网络上有一个绑定的名称才能保证正确接收数据;

6.         用closesocket函数关闭套接字;

7.         用WSACleanup函数关闭Socket环境。


查看完整回答
反对 回复 2019-07-14
?
慕姐829404

主要是看采取什么样的协议。是tcp还是udp使用的头文件是不一样的。不过差别都不大。winscok2.h就够用了。不过往深了走其实还是要涉及到其他的,这个普通的套接字编程主要是winscok2.h里面的。

查看完整回答
反对 回复 2019-07-14

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信