news 2026/6/10 15:04:46

搞懂网络编程:字节序与 IP 地址转换全攻略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
搞懂网络编程:字节序与 IP 地址转换全攻略

各类资料学习下载合集
链接:https://pan.quark.cn/s/7c8c391011eb

一、 为什么需要“翻译”?(大端与小端)

计算机在存储多字节数据(如整数)时,有两种流派:

  • 小端序 (Little-Endian)主机字节序。大部分 PC(x86 架构)默认采用。它是“低位在前”,例如0x1234存为34 12
  • 大端序 (Big-Endian)网络字节序。TCP/IP 协议规定,在网络上传输数据必须使用这种顺序。它是“高位在前”,例如0x1234存为12 34

结论:在发送 IP 地址(32位)和端口号(16位)之前,必须将它们从主机序转换为网络序,否则服务器根本认不出你是谁。


二、 转换函数的“助记词”解析

C 语言库提供了一组函数来完成这种转换。看似复杂,其实只要看懂函数名中的缩写,就能秒懂它们的用途:

关键字英文全称含义
hhost主机(本地字节序)
nnet网络(网络字节序)
sshort16位整数(通常用于端口号
llong32位整数(通常用于IPv4 地址

组合示例

  • htons:HosttoNetShort (把本地端口转为网络端口)
  • ntohl:NettoHostLong (把网络收到 IP 包转为本地整数)

三、 代码实战 1:端口与整形 IP 的转换

这个示例演示如何将本地的端口号和数字形式的 IP 地址转换为网络标准格式。

代码示例 (endian_convert.c)

#include<stdio.h>#include<arpa/inet.h>intmain(){// 1. 端口转换 (16位)// 假设端口号是 0x1234 (十进制 4660)unsignedshorthost_port=0x1234;unsignedshort
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/6 7:03:19

Socket 编程利器:深入解析 `inet_pton` 函数

一、 为什么要用 inet_pton? 在网络通信中,IP 地址在代码里其实是一个整数(二进制)。 人类视角:点分十进制字符串,例如 "192.168.1.1"。 机器视角:32位的大端整数,例如 0xC0A80101。 inet_pton 的作用就是充当翻译官:它不仅能把字符串转成整数,还能自动处…

作者头像 李华
网站建设 2026/6/9 22:32:00

彻底革新跨语言邮件体验:kiss-translator智能翻译进阶指南

彻底革新跨语言邮件体验&#xff1a;kiss-translator智能翻译进阶指南 【免费下载链接】kiss-translator A simple, open source bilingual translation extension & Greasemonkey script (一个简约、开源的 双语对照翻译扩展 & 油猴脚本) 项目地址: https://gitcode…

作者头像 李华
网站建设 2026/6/9 22:26:54

低成本创业:基于阿里通义Z-Image-Turbo的个性化明信片生成服务

低成本创业&#xff1a;基于阿里通义Z-Image-Turbo的个性化明信片生成服务 作为一名刚起步的创业者&#xff0c;小林最近萌生了一个创意&#xff1a;提供个性化明信片定制服务。但当她调研技术方案时&#xff0c;发现专业GPU服务器的高昂成本让人望而却步。幸运的是&#xff0c…

作者头像 李华
网站建设 2026/6/6 10:11:31

产品经理必看:如何用现成环境一天完成AI视觉方案POC

产品经理必看&#xff1a;如何用现成环境一天完成AI视觉方案POC 为什么你需要现成的AI视觉环境 作为产品经理&#xff0c;当你需要在24小时内评估多个图像理解模型在智能相册中的应用时&#xff0c;最头疼的往往不是模型选择&#xff0c;而是环境搭建。传统方式下&#xff0c;光…

作者头像 李华
网站建设 2026/6/1 2:40:23

BongoCat桌面伴侣终极玩法:让呆萌猫咪陪你敲代码打游戏

BongoCat桌面伴侣终极玩法&#xff1a;让呆萌猫咪陪你敲代码打游戏 【免费下载链接】BongoCat 让呆萌可爱的 Bongo Cat 陪伴你的键盘敲击与鼠标操作&#xff0c;每一次输入都充满趣味与活力&#xff01; 项目地址: https://gitcode.com/gh_mirrors/bong/BongoCat 还在为…

作者头像 李华
网站建设 2026/5/31 1:23:27

JPEGsnoop终极指南:5步轻松掌握专业图像分析

JPEGsnoop终极指南&#xff1a;5步轻松掌握专业图像分析 【免费下载链接】JPEGsnoop JPEGsnoop: JPEG decoder and detailed analysis 项目地址: https://gitcode.com/gh_mirrors/jp/JPEGsnoop 想要深入了解JPEG图像内部结构吗&#xff1f;JPEGsnoop就是你的专业助手&am…

作者头像 李华