设为首页 加入收藏

TOP

1.2.2 开发准备(2)
2013-10-07 15:53:16 来源: 作者: 【 】 浏览:80
Tags:1.2.2 开发 准备

1.2.2  开发准备(2)

3. Winsock库函数

在本实例中,还需要使用Winsock库函数实现注册、注销以及错误处理。接下来将简单讲解两个最为常用的Winsock库函数的基本知识。

(1) WSAStartup

在使用Winsock库函数之前,必须先调用函数WSAStartup,该函数负责初始化动态链接库Ws2_32.dll。

函数WSAStartup的定义格式如下:

  1. int WSAStartup(WORD wVersionRequested, LPWSADATA lpWSAData); 

wVersionRequested:是一个WORD(双字节)数值,它指定了应用程序需要使用的Winsock版本,主版本号在低字节,次版本号在高字节。

lpWSAData:指向WSADATA数据结构的指针,该结构用于返回本机的Winsock系统实现的信息。该结构中WhighVersion和wVersion两个域,前者是系统支持的最高版本,后者是系统希望调用者使用的版本。

如果函数执行成功则返回0,否则返回错误码。如果ws2_32.dll尚未初始化,则无法调用WSAGetLastError。

(2) WSAGetLastError

函数WSAGetLastError的定义格式如下。

  1. int WSAGetLastError(void); 

本函数返回上次发生的网络错误。当一特定的Windows Sockets API函数指出一个错误已经发生时,本函数就应被调用来获得对应的错误代码。

在一个非占先的Windows环境下,WSAGetLastError()只用来获得Windows Sockets API错误。在占先环境下,WSAGetLastError()将调用GetLastError()来获得所有在每线程基础上的Win32 API函数的错误状态。为了提高可移植性,应用程序应在调用失败后应立即使用WSAGetLastError()。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇1.2.2 开发准备(1) 下一篇1.2.3 小试牛刀--编程实现获取计..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C++中智能指针的性能 (2025-12-25 03:49:29)
·如何用智能指针实现c (2025-12-25 03:49:27)
·如何在 C 语言中管理 (2025-12-25 03:20:14)
·C语言和内存管理有什 (2025-12-25 03:20:11)
·为什么C语言从不被淘 (2025-12-25 03:20:08)