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地址

  • 相关阅读:
    Java 概述
    快速开始
    Essential Java.《Java 编程要点》
    SpringBoot属性配置-第三章
    SpringBoot项目属性配置-第二章
    SpringBoot学习-第一章
    spring boot configuration annotation processor not found in classpath
    IntelliJ IDEA 2017 完美注册方法及破解方法
    springmvc-初次接触
    mybatis的多表联查
  • 原文地址:https://www.cnblogs.com/jamesharden/p/6492971.html
Copyright © 2011-2022 走看看