news 2026/6/9 20:54:05

Socket 编程进阶:`inet_ntop` 函数与 `sockaddr` 结构体详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Socket 编程进阶:`inet_ntop` 函数与 `sockaddr` 结构体详解

Socket 编程进阶:inet_ntop函数与sockaddr结构体详解

一、inet_ntop:让 IP 地址“现原形”

当网络包到达你的程序时,IP 地址是网络字节序(大端)的二进制数据。为了让人能看懂,我们需要把它还原成点分十进制字符串(如"192.168.1.1")。

这就要用到inet_ntop函数。

  • n: Network (网络/数值)
  • to: 转换
  • p: Presentation (显示/文本)

1. 函数原型

#include<arpa/inet.h>constchar*inet_ntop(intaf,constvoid*src,char*dst,socklen_tsize);

2. 参数解析(敲黑板!)

  1. af:协议族。AF_INET(IPv4) 或AF_INET6(IPv6)。
  2. src传入参数。指向存放了大端 IP 的内存地址(通常是struct sockaddr_in里的sin_addr)。
  3. dst传出参数。你需要先准备好一个字符数组,函数会把转换好的字符串填进去。
  4. size缓冲区大小。告诉函数dst有多大,防止写越界。
    • IPv4 建议至少定义 16 字节 (INET_ADDRSTRLEN)。
    • IPv6 建议至少定义 46 字节 (INET6_ADDRSTRLEN)。

3. 返回值

  • 成功:返回指向dst的非空指针(也就是转换后的字符串地址)。
  • 失败:返回NULL(此时需检查errno)。

二、 代码实战:将二进制 IP 还原为字符串

假设我们从网络中直接捕获了 4 个字节C0 A8 01 02,我们看看如何把它变回字符串。

代码 (ntop_demo.c)
#include<stdio.h>#include<arpa/inet
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/6 6:46:59

代码生成模型评估指南:用对工具选对AI编程助手

代码生成模型评估指南&#xff1a;用对工具选对AI编程助手 【免费下载链接】AI内容魔方 AI内容专区&#xff0c;汇集全球AI开源项目&#xff0c;集结模块、可组合的内容&#xff0c;致力于分享、交流。 项目地址: https://gitcode.com/AIResource/aicode 还在为选择哪个…

作者头像 李华
网站建设 2026/6/6 12:26:53

Qwen3-VL-WEBUI教育领域落地:课件内容提取部署案例

Qwen3-VL-WEBUI教育领域落地&#xff1a;课件内容提取部署案例 1. 引言&#xff1a;为何选择Qwen3-VL-WEBUI进行教育场景落地&#xff1f; 在当前AI赋能教育的浪潮中&#xff0c;自动化课件内容提取与结构化解析成为提升教学效率的关键环节。传统OCR和文本识别工具在处理复杂…

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

Czkawka终极指南:3步告别Windows磁盘爆满烦恼

Czkawka终极指南&#xff1a;3步告别Windows磁盘爆满烦恼 【免费下载链接】czkawka 一款跨平台的重复文件查找工具&#xff0c;可用于清理硬盘中的重复文件、相似图片、零字节文件等。它以高效、易用为特点&#xff0c;帮助用户释放存储空间。 项目地址: https://gitcode.com…

作者头像 李华
网站建设 2026/6/9 10:56:41

免费开源图书管理工具o-lib完整使用教程

免费开源图书管理工具o-lib完整使用教程 【免费下载链接】o-lib O-LIB is a free and open source software for PC. 项目地址: https://gitcode.com/gh_mirrors/ol/o-lib 在数字化阅读时代&#xff0c;如何高效管理个人图书收藏成为许多读者的共同需求。o-lib作为一款完…

作者头像 李华
网站建设 2026/6/5 4:00:15

Qwen3-VL-WEBUI开发者工具推荐:免配置镜像快速接入教程

Qwen3-VL-WEBUI开发者工具推荐&#xff1a;免配置镜像快速接入教程 1. 背景与核心价值 随着多模态大模型在视觉理解、图文生成和交互式代理任务中的广泛应用&#xff0c;开发者对高效、易用的部署方案需求日益增长。阿里云推出的 Qwen3-VL-WEBUI 正是为解决这一痛点而生——它…

作者头像 李华
网站建设 2026/6/9 16:05:37

Qwen3-VL空间分析:物体关系

Qwen3-VL空间分析&#xff1a;物体关系 1. 引言&#xff1a;Qwen3-VL-WEBUI与视觉语言模型的新范式 随着多模态AI的快速发展&#xff0c;视觉-语言模型&#xff08;VLM&#xff09;已从简单的图文匹配演进到具备复杂空间推理和代理能力的智能系统。阿里最新推出的 Qwen3-VL-W…

作者头像 李华