uhnaf 发表于 2012-10-09 10:01

htonl之类函数的疑问

看man htonl发现原型定义如下:
uint32_t ntohl(uint32_t netlong);

它的参数是unsigned int 类型,htons,ntohl,ntohs这些参数都是unsigned的,如果我的发送的结构体的类型有signed型的,如何解决呢

谢谢大家!

MMMIX 发表于 2012-10-09 14:39

回复 1# uhnaf


    把你要发送的内容当作一个字节流就行了,不要考虑什么有符号数,无符号数的。

uhnaf 发表于 2012-10-10 10:20

回复 2# MMMIX

那接收端,怎么转呢,我是想接收端直接用结构体。不用拆字节流,谢谢

_Rayx 发表于 2012-10-10 11:24

结构体is bad

MMMIX 发表于 2012-10-10 12:13

uhnaf 发表于 2012-10-10 10:20 static/image/common/back.gif
回复 2# MMMIX

那接收端,怎么转呢,我是想接收端直接用结构体。不用拆字节流,谢谢

接受端收到的也是一个字节流,怎么解释就看它自己了。

uhnaf 发表于 2012-10-10 13:07

回复 5# MMMIX
谢谢,我理解你的意思,

linux_c_py_php 发表于 2012-10-11 23:16

内存摆在那里,计算机只会操作二进制, 有无符号只是编译器和人的认知.

henry3695 发表于 2012-10-12 09:21

大端小端,需要注意的,跟cpu有关系
页: [1]
查看完整版本: htonl之类函数的疑问