Dotcpp  >  编程教程  >  TCP协议客户端及代码实现  >  ntohl和ntohs函数:网络序转换到主机序

ntohl和ntohs函数:网络序转换到主机序

点击打开在线编译器,边学边练

有主机序转网络序,就有网络序转主机序,分别是ntohl和ntohs函数,接下来为大家讲解这两个函数。


1.ntohl函数

函数功能:

将一个无符号短整型数从网络字节顺序转换成主机字节顺序。这个函数与htons原理相同,不过是htos是主机序到网络序,而ntohs是网络序到主机序。

头文件:

#include <winsock2.h>

函数原型:

uint16_t ntohs(uint16_t netshort);

返回值类型:

整型

返回值:

返回一个主机字节顺序表达的数。

参数说明:

其中netshort一个以网络字节顺序表达的16位数,ntohs中的h表示host意思是主机地址,to表示to意思是去往,n表示net意思是网络,s表示signed long意思是无符号的短整型(32位的系统是2字节)。

调用ntohs函数代码举例;

ntohs(5200);

2.ntohl函数

函数功能:

将一个无符号长整型从网络字节顺序转换成主机字节顺序。这个函数与htonl原理相同,不过是htol是主机序到网络序,而ntohl是网络序到主机序。

头文件:

#include <winsock2.h>

函数原型:

uint16_t ntohs(uint16_t netlong);

返回值类型:

整型

返回值:

返回一个主机字节顺序表达的数。

参数说明:

其中netlong一个以网络字节顺序表达的32位数,ntohs中的h表示host意思是主机地址,to表示to意思是去往,n表示net意思是网络,s表示signed long意思是无符号的短整型(32位的系统是2字节)。

调用ntohl函数代码举例;

ntohl( 0x403214);

本文固定URL:https://www.dotcpp.com/course/809

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)