zoukankan      html  css  js  c++  java
  • 结构体sockadrr、sockaddr_in、in_addr的定义

    /* Internet address.  */
    typedef uint32_t in_addr_t;
    struct in_addr
      {
        in_addr_t s_addr;
      };
     
    typedef unsigned short int sa_family_t;
    #define __SOCKADDR_COMMON(sa_prefix)
       sa_family_t sa_prefix##family
     
    /* Structure describing an Internet socket address.  */
    struct sockaddr_in
      {
        __SOCKADDR_COMMON (sin_);
        in_port_t           sin_port;                  /* Port number.  */
        struct in_addr   sin_addr;                 /* Internet address.  */
        unsigned char  sin_zero[sizeof (struct sockaddr) - __SOCKADDR_COMMON_SIZE - sizeof (in_port_t) - sizeof (struct in_addr)];
                                                                 /* Pad to size of `struct sockaddr'.  */
      };
     
    typedef unsigned short    sa_family_t;
    /*1003.1g requires sa_family_t and that sa_data is char. */
    struct sockaddr {
        sa_family_t    sa_family;        /* address family, AF_xxx    */
        char               sa_data[14];    /* 14 bytes of protocol address    */
    };

     

    struct sockaddr是通用的socket地址,struct sockaddr_in是Internet socket,二者可以进行类型转换

     

  • 相关阅读:
    Spring 发生 has not been refreshed yet 异常
    rsyslog config
    grok
    阿里云态势
    Unity的asm笔记
    Unity2020或Unity2019安装后无法启动
    rider代码折叠
    使用rider调试lua
    MacType更好的字体渲染
    Unity字体和画面花屏处理
  • 原文地址:https://www.cnblogs.com/ljtknowns/p/7308512.html
Copyright © 2011-2022 走看看