Sockets 传输数据时字节顺序的困难?
谁能解释传输数据时字节顺序的问题?Sockets 传输数据时字节顺序的困难?,sockets,networking,network-programming,byte,Sockets,Networking,Network Programming,Byte,谁能解释传输数据时字节顺序的问题? 如何用套接字接口解决这个问题?如果您能提供任何帮助,我将不胜感激。多字节数据(2/4/8字节整数、2/4字节字符串字符等)可以在内存中以小端或大端表示。当在机器之间交换数据时,特别是当它们使用不同的endian体系结构时,必须在传输过程中对数据进行规范化。Socket API具有用于此目的的标准hton…()(主机到网络)和ntoh…()(网络到主机)函数。但是,在准备/接收数据时必须自己调用它们,因为套接字只能看到任意字节,所以不会自动调用它们。更高级别的协
如何用套接字接口解决这个问题?如果您能提供任何帮助,我将不胜感激。多字节数据(2/4/8字节整数、2/4字节字符串字符等)可以在内存中以小端或大端表示。当在机器之间交换数据时,特别是当它们使用不同的endian体系结构时,必须在传输过程中对数据进行规范化。Socket API具有用于此目的的标准
hton…()
(主机到网络)和ntoh…()
(网络到主机)函数。但是,在准备/接收数据时必须自己调用它们,因为套接字只能看到任意字节,所以不会自动调用它们。更高级别的协议(FTP、TCP、自定义协议等)规定字节代表什么以及它们的行为方式。什么协议?使用TCP,答案很简单——各个字节以流的方式彼此跟随。只传输字节,因此除了“一个接一个”之外,没有其他字节顺序。