首页 > 系统相关 >【Linux网络编程】字节序

【Linux网络编程】字节序

时间:2024-08-28 15:27:36浏览次数:11  
标签:字节 int ip 编程 unsigned long Linux port

【Linux网络编程】字节序

字节序

字节序就是字节在内存中存储的顺序,如32位整数0x01234567,在内存中存储时,有如下两种顺序:

image

大端序将数值的高位存储在低位地址中,小端序则相反。

网络字节序

网络中传输数据均采用大端序

Linux字节序转换函数

#include <netinet/in.h> 中提供了 4 个函数:

unsigned long int htonl(unsigned long int hostlong);    // 主机ip->网络ip
unsigned short int htons(unsigned short int hostshort); // 主机port->网络port
unsigned long int ntohl(unsigned long int netlong);     // 网络ip->主机ip
unsigned short int ntohs(unsigned long int netshort);   // 网络port->主机port

其含义很明确,如 "htol" 表示 "host to network long"。一般长整型函数用于转换 ip 地址,短整型函数用来转换 port。

标签:字节,int,ip,编程,unsigned,long,Linux,port
From: https://www.cnblogs.com/yangxuanzhi/p/18384736

相关文章

  • 【Linux网络编程】Socket Api函数
    【Linux网络编程】SocketApi函数TCP/IP协议族TCP/IP协议族有sockaddr_in和sockaddr_in6两个专用的socket地址结构体,它们分别用于IPv4和IPv6,在此只将IPv4,如下为structsockaddr_in:structsockaddr_in{sa_family_tsin_family;//地址族:AF_INETu_int......
  • Linux 软件目录迁移
    背景:很多软件默认安装到了/root盘下的/var/lib/目录下,导致/root盘很快被占满,如docker。为了释放/root盘,让系统能正常工作,就需要把这些特别大磁盘占用量的目录迁移到挂载了其他磁盘的目录,比如:/home,下面是具体步骤:1. 停止Docker服务systemctlstopdocker 2. 复制 /var/l......
  • 【MSF系列】使用meterpreter从linux系统下载文件到kali
    成功拿到了shell,在/var/www/html/cacti底下有个sql文件,将其下载下来命令download/path/to/file.txt/opt/downloads/file.txt下载后导入本地,可以获得登录密码+----+----------+----------------------------------+-------+---------------+---------------+--------------......
  • Linux APP查询驱动的方式归类总
    LinuxAPP查询驱动的方式归类总前言一、具体方式是什么?1、休眠与唤醒2、阻塞与非阻塞3、POLL机制4、异步通知tips:等待队列用于进程等待条件,工作队列用于异步任务处理。二、使用步骤休眠与唤醒tips:在中断处理函数中,不能休眠,也就不能调用会导致休眠的函数。上半......
  • linux总线设备驱动模型
    linux总线设备驱动模型platform平台驱动模型linux自带I2C、SPI、USB等总线。但是在SOC中有些外设是没有总线这个概念的,但是又要使用总线、驱动和设备模型该怎么办呢?为了解决此问题,Linux提出了platform这个虚拟总线,相应的就有platform_driver和platform_devi......
  • linux编程——认识GCC编译器
    目录一、引言二、GCC编译器简介三、GCC的主要特点四、GCC的使用方法五、GCC的高级功能六、总结一、引言  在Linux编程的广阔世界中,GCC(GNUCompilerCollection)编译器无疑是一个至关重要的工具。对于广大的开发者来说,熟练掌握GCC编译器的使用,能够极大地......
  • 【Linux入门】shell基础篇——if、case、与for循环
    文章目录if的条件分支基本`if`语句包含`else`的`if`语句包含`elseif`(或`elif`)的`if`语句注意示例if的嵌套使用case`case`语句的基本语法:示例使用if语句结合casefor循环for循环的基本格式1.基于列表的`for`循环2.C语言风格的`for`循环注意其他循环基于文件的for循环......
  • 【Linux入门】shell基础篇——while循环与until循环
    文章目录while循环与until循环while循环while循环的基本格式示例:打印0到5的数字死循环的几种实现方式注意退出循环until循环、与while循环的区别until循环示例while循环方式注意有趣的实例批量建立用户批量删除用户猜价格游戏密码输入验证说明while循环与until......
  • 零成本、无编程,GLM-4-Flash免费API发布,算法工程师嗨翻了!!!
    作为一名资深NLP算法工程师,大模型在日常工作中扮演了非常重要的角色,辅助处理很多工作。但是,大模型的使用非常麻烦:主流大模型通过网页对话方式交互,手工输入Promt,通过对话的方式获取结果,长度有限且非常不方便。资源有限,市面上很少大模型API资源可供使用,并且都是收费的。今......
  • 用 Higress AI 网关降低 AI 调用成本 - 阿里云天池云原生编程挑战赛参赛攻略
    作者介绍:杨贝宁,爱丁堡大学博士在读,研究方向为向量数据库《Higress AI网关挑战赛》正在火热进行中,Higress社区邀请了目前位于排行榜top5的选手杨贝宁同学分享他的心得。下面是他整理的参赛攻略:背景我们要在Higress网关中编写WebAssembly(wasm)插件,使得在http请求的各个......