当前位置: 首页 > news >正文

毕业设计网站代做多少钱seo排名赚挂机赚钱软件下载

毕业设计网站代做多少钱,seo排名赚挂机赚钱软件下载,做长图文网站,上海建筑安全协会网站文章目录 前言核心知识关于 小端法关于 大端法网络字节序的转换 函数 前言 在进行 socket 网络编程时,会用到字节流的转换函数、例如 inet_pton、htons 等,那么为什么要用到这些函数呢,本篇主要就是对这部分进行介绍。 核心知识 重点需要记…

文章目录

    • 前言
    • 核心知识
    • 关于 小端法
    • 关于 大端法
    • 网络字节序的转换 函数

前言

在进行 socket 网络编程时,会用到字节流的转换函数、例如 inet_pton、htons 等,那么为什么要用到这些函数呢,本篇主要就是对这部分进行介绍。

核心知识

重点需要记住的就是以下三点:
① 本地的数据和网络的数据,其排列方式是有区别的。本地数据存储 采用的是 “小端法”,网络数据流 采用的是 “大端法” 。(这就会导致 本地字节序 和 网络字节序 之间需要做转换)

② 记住两个 IP 地址转换函数
inet_pton(): 该函数用于将点分十进制字符串形式的IP地址,转换为网络字节序的二进制形式IP地址。通常在需要从用户输入的IP地址解析为网络字节序形式时使用。

inet_ntop(): 该函数用于将网络字节序的二进制形式IP地址,转换为点分十进制字符串形式的IP地址。通常在需要将IP地址转换为可读性更好的形式(如日志输出)时使用。

记住二者使用场景:
例如,在接收到来自客户端的连接请求时,通常会使用 inet_ntop() 将客户端的IP地址转换为可读性更好的字符串格式进行显示或记录。而在需要把用户输入的IP地址转换为网络字节序进行套接字地址填充时,则会使用 inet_pton()。

③ 记住几个能完成 网路字节序 和 主机字节序 转换的库函数
在这里插入图片描述
注意,以上四个函数是进行整数之间的转换。

h 表示 host,n:network,l:32 位长整型,s:16 位短整型。

例如 htonl,用于将 32位主机字节序 的整数转换为 网络字节序 (大端字节序)表示。(结合 INADDR_ANY 参数可用于 IP 转换)。

例如 htons,用于将 16位主机字节序 的整数转换为 网络字节序 (大端字节序)表示。(结合 SERV_PORT 参数可用于 端口 转换)。

以上的 转换函数 为什么只提到了 IP 和 端口 的转换呢?
因为 IP 地址 + 端口号,可以在网络环境中,唯一标识一个进程。

关于 小端法

本地数据流,高位存高地址。低位存低地址。 int a = 0x12345678
在这里插入图片描述

关于 大端法

网络数据流, 高位存低地址。低位存高地址。int a = 0x12345678
在这里插入图片描述
本地存储的数据 和 网络字节序 的存储方式不一致,这会导致在进行 socket 网络通信时,需要做字节序的转换。

为什么不采用一致的存储方案,而是分成 大端法 和 小端法,这涉及到历史原因。

网络字节序的转换 函数

可以调用以下库函数做 网络字节序主机字节序 的转换。
在这里插入图片描述
h 表示 host,n:network,l:32 位长整型,s:16 位短整型。

例如 htonl,用于将 32位主机字节序 的整数转换为 网络字节序 (大端字节序)表示。(结合 INADDR_ANY 参数可用于 IP 转换)。

例如 htons,用于将 16位主机字节序 的整数转换为 网络字节序 (大端字节序)表示。(结合 SERV_PORT 参数可用于 端口 转换)。

#include <arpa/inet.h>

int inet_pton(int af, const char *src, void *dst); 本地字节序(string IP) —> 网络字节序

		af:AF_INET、AF_INET6src:传入,IP地址(点分十进制)dst:传出,转换后的 网络字节序的 IP地址。 返回值:成功: 1异常: 0, 说明src指向的不是一个有效的ip地址。失败:-1

const char * inet_ntop(int af, const void *src, char *dst, socklen_t size); 网络字节序 —> 本地字节序(string IP)

		af:AF_INET、AF_INET6src: 网络字节序IP地址dst:本地字节序(string IP)size: dst 的大小。返回值: 成功:dst。 	失败:NULL

提问:
htonl 函数也能将本地字节序转换成网络字节序。那么,htonl 函数 和 inet_pton 函数有什么区别呢

解答:
htonl() 和 inet_pton() 这两个函数在功能上是不同的:

htonl(): 该函数用于将32位主机字节序的整数转换为网络字节序(大端字节序)表示。它通常用于处理整数类型数据的字节序转换。

inet_pton(): 该函数用于将点分十进制字符串形式的IP地址转换为二进制格式的网络字节序IP地址。它将一个IP地址从人类可读的字符串格式转换为计算机网络设备能够理解的二进制格式。

总结来说,
htonl() 用于 整数类型数据 的 字节序 转换。
inet_pton() 用于 IP地址(字符串) 表示形式和 网络字节序 之间的转换。

http://www.khdw.cn/news/52766.html

相关文章:

  • 建立搜索引擎网站别人恶意点击我们竞价网站
  • 上海营销型网站建设方案seo模拟点击软件源码
  • 长沙做网站建设公司哪家好百度一下 你就知道首页
  • 一站式网站建设行业百度搜索引擎属于什么引擎
  • 柳江区城乡住房建设局网站网络推广外包哪家好
  • 融资网站建设方案优化大师平台
  • 中国建设网上银行个人登录百度运营优化师
  • 新的网站平台如何做地推广告开户
  • 电商网站建设教案百度浏览器官网入口
  • 公司做网站流程流程杭州网站优化流程
  • 国外网站需要备案吗网络培训总结
  • 图形设计网站网站建设优化400报价
  • 广州做外贸网站的公司简介seo中文含义是什么
  • 哪有可以专门做外包项目的网站网络公司有哪些
  • 网站建设深圳哪里学知乎关键词排名工具
  • 正规的镇江网站建设免费的html网站
  • 网站你懂我意思正能量免费下载怎么弄一个网站平台
  • 网站彩票网站开发搜索引擎优化课程
  • 成都软件开发公司排行榜seo关键词快速排名前三位
  • 网站图标怎么上传itme收录优美图片官网
  • wordpress图片介绍深圳专业seo外包
  • 网页设计怎么做网站企业网站的作用
  • 电子商务及网站建设建立网站费用大概需要多少钱
  • 专业网站建设哪家效果好多地优化完善疫情防控措施
  • 景县做个油管的网站怎么做软件推广平台有哪些
  • 网站动画用什么程序做搜索量排名
  • 集团网站建设定制网站建设百度打广告收费表
  • 公司网站管理必应bing搜索引擎
  • 免费网站模板下载网站学生个人网页制作
  • 做网站mfdos安徽百度seo教程