C++socket编程,数据转为网络字节序的问题htons
htons是将一个unsignedshort转为网络字节序,即bigendian但是我在很多开源的socket程序中发现有些地方将一个int变量传递给了htons函数。这...
htons是将一个 unsigned short转为网络字节序,即big endian
但是我在很多开源的socket程序中发现有些地方将一个int变量传递给了htons函数。这样没有问题吗?
还有,如果需要将传输的int型的数据转换为网络字节序,请问有用哪个函数? 我现在是自己编写函数来转换的,但是既然有htons函数,应该也有相应的将 int 转变为的网络字节序的函数吧? 展开
但是我在很多开源的socket程序中发现有些地方将一个int变量传递给了htons函数。这样没有问题吗?
还有,如果需要将传输的int型的数据转换为网络字节序,请问有用哪个函数? 我现在是自己编写函数来转换的,但是既然有htons函数,应该也有相应的将 int 转变为的网络字节序的函数吧? 展开
2个回答
展开全部
C语言只规定short <= int <=long int。具体还得看具体的编译器
htons() host to network short
htonl() host to network long
ntohl() network to host long
ntohs() network to host short
htons() host to network short
htonl() host to network long
ntohl() network to host long
ntohs() network to host short
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询