Windows Socket API利用经验[VC/C++编程]
本文“Windows Socket API利用经验[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
本文是我在举行MS-Windows、HP-Unix网络编程的实践历程中总结出来的一些经验,仅供大家参考.本文所谈到的Socket函数假如没有分外阐明,都是指的Windows Socket API.
1、WSAStartup函数
int WSAStartup(
WORD wVersionRequested,
LPWSADATA lpWSAData
);
利用Socket的程序在利用Socket之前必须调用WSAStartup函数.该函数的第一个参数指明程序恳求利用的Socket版本,此中高位字节指明副版本、低位字节指明主版本;操作系统操纵第二个参数返回恳求的Socket的版本信息.当一个利用程序调用WSAStartup函数时,操作系统按照恳求的Socket版本来搜索呼应的Socket库,然后绑定找到的Socket库到该利用程序中.今后利用程序便可以调用所恳求的Socket库中的别的Socket函数了.该函数履行成功后返回0.
例:假定一个程序要利用2.1版本的Socket,那么程序代码以下
wVersionRequested = MAKEWORD( 2, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
2、WSACleanup函数
int WSACleanup (void);
利用程序在完成对恳求的Socket库的利用后,要调用WSACleanup函数来解除与Socket库的绑定并且释放Socket库所占用的系统资源.
3、socket函数
SOCKET socket(
int af,
int type,
int protocol
);
利用程序调用socket函数来成立一个可以举行网络通信的套接字.第一个参数指定利用程序利用的通信协议的协议族,关于TCP/IP协议族,该参数置PF_INET;第二个参数指定要成立的套接字范例,流套接字范例为SOCK_STREAM、数据报套接字范例为SOCK_DGRAM;第三个参数指定利用程序所利用的通信协议.该函数假如调用成功就返回新成立的套接字的描写符,假如失利就返回INVALID_SOCKET.套接字描写符是一个整数范例的值.每个进程的进程空间里都有一个套接字描写符表,该表中存放着套接字描写符和套接字数据构造的对应关系.该表中有一个字段存放新成立的套接字的描写符,另一个字段存放套接字数据构造的地址,因此按照套接字描写符便可以找到其对应的套接字数据构造.每个进程在自己的进程空间里都有一个套接字描写符表但是套接字数据构造都是在操作系统的内核缓冲里.下面是一个成立流套接字的例子:
以上是“Windows Socket API利用经验[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |