socket网络编程学习笔记(头文件、库、WSAStartup)

网络头文件

#include <WinSock2.h>

其中,Win 指 windows,Sock 指 socket 网络编程,2 指第二版的网络库

网络函数库

#pragma comment(lib, "ws2_32.lib")

其中 ws2_32.lib 指 windows socket 第二版 32 位

WSAStartup 函数

语法

int WSAStartup(
  WORD      wVersionRequired,
  LPWSADATA lpWSAData
);

参数一:调用方可以使用的最高版本的 Windows 套接字规范。 高字节序指定副版本号,低顺序字节指定主版本号。

参数二:指向 WSADATA 数据结构的指针,该结构用于接收 Windows 套接字实现的详细信息。

返回值

如果成功, WSAStartup 函数将返回零。 否则,它将返回下面列出的错误代码之一。

错误代码含义

WSASYSNOTREADY

基础网络子系统尚未准备好进行网络通信。

WSAVERNOTSUPPORTED

此特定 Windows 套接字实现不提供请求的 Windows 套接字支持版本。

WSAEINPROGRESS

正在执行阻止 Windows 套接字 1.1 操作。

WSAEPROCLIM

已达到 Windows 套接字实现支持的任务数的限制。

WSAEFAULT

lpWSAData 参数不是有效的指针。

备注

1. WSAStartup 函数必须是应用程序或 DLL 调用的第一个 Windows 套接字函数。 它允许应用程序或 DLL 指定所需的 Windows 套接字版本,并检索特定 Windows 套接字实现的详细信息。 应用程序或 DLL 只能在成功调用 WSAStartup 后发出进一步的 Windows 套接字函数。

2. 如果 WSASDATA 结构的 wVersion 成员对调用方不可接受的,则应用程序或 DLL 应调用  来释放 Winsock DLL 资源,并且无法初始化 Winsock 应用程序。 为了支持此应用程序或 DLL,必须搜索要安装在平台上的 Winsock DLL 的更新版本。

MAKEWORD函数

语法

WORD MAKEWORD(
   BYTE bLow,
   BYTE bHigh
);

参数一:新值的低位字节(存储时在后,对应主版本号)。

参数二:新值的高位字节(存储时在前,对应副版本号)。

返回值

返回值是一个 WORD 值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值