zoukankan      html  css  js  c++  java
  • 创建套接字(Socket)对象

    无论是使用哪种协议,无论是客户端还是服务端,在使用Socket进行通信之前,首先要完成Winsock库的初始化工作,之后应该创建Socket对象,用它进行网络通信。使用Socket这个API函数可以完成该功能,函数原型如下。

    SOCKET socket(
     int af,    //指定套接字使用的地址格式
     int type,   //套接字类型
     int protocol //套接字协议类型
    );

    第一个参数af用来指定套接字使用的地址格式,对于Windows下的Winsock库所支持的地址族值为AF_INET。

    第二个参数type用来指定套接字的类型,通常有如下类型。

    SOCK_STREAM //流套接字,TCP协议使用的有连接的可靠传输类型
    SOCK_DGRAM  //数据报套接字,UDP使用的无连接的不可靠的传输类型

    第三个参数protocol用来指定Socket对象所使用的协议类型,通常有如下类型。

    IPPROTO_TCP  //TCP协议
    IPPROTO_UDP //UDP协议

    然而当type为SOCK_STREAM值时,就指明是用于TCP协议,为SOCK_DGRAM值时,就指明是用于UDP协议。所以这两种情况下protocol参数可以是0。函数执行成功则返回一个socket对象,否则返回INVALID_SOCKET(-1),可以使用WSAGetLastError函数获得错误代码。

  • 相关阅读:
    MySQL 中文显示乱码
    sprintf
    持续集成
    两个数据库中的数据同步问题(转)
    指针和引用的区别
    #define,const,typedef三者联系与区别
    [转载]selenium webdriver学习(八)
    PHPUnit学习安装
    CI是什么?
    图形界面的操作(转)
  • 原文地址:https://www.cnblogs.com/cyx-b/p/12530090.html
Copyright © 2011-2022 走看看