zoukankan      html  css  js  c++  java
  • 【Linux 网络编程】字节序和地址装换

    (3)字节序
        <1>大端字节序
            最高的有效位存储于最低内存地址处,最低有效位存储于最高内存地址处。
        <2>小端字节序
            最高的有效位存储于最高内存地址处,最低有效位存储于最低内存地址处。
        保存0x12345678
           ----------------->内存地址增长的方向
            12 34 56 78 大端字节序
            78 56 34 12 小端字节序
        <3>主机字节序
            不同的主机有不同的字节序,如x86是小端字节序,ARM为可配置字节序
        <4>网络字节序
            网络字节序规定为大端字节序
        <5>字节序转换函数
            uint32_t htonl(uint32_t hostlong);
            uint16_t htons(uint16_t hostshort);
            uint32_t ntohl(uint32_t netlong);
            uint16_t ntohs(uint32_t netlong);
    <6>地址转换函数
            #incldue <netinet/in.h>
            #include <arpa/inet.h>

            int inet_aton(const char *pc, struct in_addr *inp); //把点分十进制转化为地址结构体
            in_addr_t inet_addr(const char *pc); //把点分十进制转化为32位的整数
            char *inet_ntoa(struct in_addr in); //将一个地址结构转换为点分十进制的IP地址

  • 相关阅读:
    24.Azkaban调度脚本的编写
    Docker 安装 Apache
    Docker 安装 MongoDB
    Docker 安装 Redis
    Docker 安装 Python
    Docker 安装 Tomcat
    Docker 安装 MySQL
    Docker 安装 PHP
    Docker 安装 Nginx
    Docker 镜像使用
  • 原文地址:https://www.cnblogs.com/jamesharden/p/6492971.html
Copyright © 2011-2022 走看看