zoukankan      html  css  js  c++  java
  • 套接字编程,建立连接connect,绑定套接字bind

    1、建立连接

    int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen);

      参数sockfd是由函数socket创建的套接字。如果该套接字的类型是SOCK_STREAM,则connect函数用于向服务器发出

    连接请求,服务器的IP地址和端口号由参数addr指定。如果套接字的类型是SOCK_DGRAM,则connect函数并不建立

    真正的连接,它只是告诉内核与该套接字进行通信的目的地址,只有该目的地址发来的数据才会被该socket接收。对于

    SOCK_DGRAM类型的套接字,调用connect函数的好处是不必在每次发送和接收数据时都指定目的地址。

      通常一个面向连接的套接字(如TCP套接字)只能调用一次connect函数。而对于无连接的套接字(如UDP套接字)则

    可以多次调用connect函数以改变与目的地址的绑定。将参数addr中的sa_family设置为AF_UNSPEC可以取消绑定。

      addrlen为参数addr的长度。

    代码示例:

    struct sockaddr_in sock;

    memset(sock, 0, sizeof(sock));

    sock.sin_family = AF_INET ;

    sock.sin_port = htons(6000);

    inet_aton("200.200.3.18",      &sock.sin_addr);

    memset(sock.sin_zero, 0, sizeof(sock.sin_zero));

    connect(sock_fd,    (struct sockaddr*)&sock,     sizeof(struct sockaddr_in));

    注意:sock强制类型转换为struct sockaddr类型。

    2、绑定套接字

  • 相关阅读:
    scrapy爬虫框架入门教程
    wing IDE破解方法
    python网络画图——networkX
    Flask Web Development —— Web表单(上)
    pandas聚合和分组运算——GroupBy技术(1)
    Python自然语言工具包(NLTK)入门
    python & pandas链接mysql数据库
    Win10家庭版怎么开启Administrator超级管理员帐户
    Echars保存图片
    Windowserver2008R2安装IIS环境
  • 原文地址:https://www.cnblogs.com/zhangxuan/p/6774999.html
Copyright © 2011-2022 走看看