网络变成首先要注意IP和端口的转换,现在电脑基本上是主机字节序,存储按照小端方式,而在网络中传输统一使用大端方式,所以网络变成首先要注意字节序的转换。
一个常用的ip转换程序的实现:#include
#include
#include
#include
#define CHIP(ip) (ip&0xff)<<24 |(ip&(0xff<<8))<8...
分类:
编程语言 时间:
2014-07-08 13:04:14
阅读次数:
374
我们知道将对象的状态保持在存储媒体中,以便可以在以后重新创建精确的副本这正是数据持久化索要做的。而且,不同应用程序之间的通讯需要相互传输数据。那么序列化和反序列化正是为此而生。序列化和反序列化所谓序列化就是把对象转换为字节序列的过程称为对象的序列化。所谓反序列化就是字节序列恢复为对象的过程称为对象的...
分类:
Web程序 时间:
2014-07-02 21:19:38
阅读次数:
244
??
Linux网络编程基础API
详细介绍了socket地址意义极其API,在介绍数据读写API部分引入一个有关带外数据发送和接收的程序,最后还介绍了其他一些辅助API。
socket地址API
主机字节序和网络字节序
字节序分为大端字节序和小端字节序。小端字节序又被称为主机字节序,大端字节序被称为网络字节序。大端字节序是指一个整数的高位字节存储在内存的低地址处,低...
摘自LDD3 为了编写可以在不同平台之间可移植的数据项的数据结构,除了规定特定的字节序以外,还应该始终强制数据项的自然对齐。 自然对齐(Natural Alignment)是指在数据项大小的整数倍(例如,8字节数据项存入8的整数倍的地址)的地址处存储数据项。 强制自然对齐可以防止编译器移动数据结构的...
分类:
其他好文 时间:
2014-06-29 18:21:47
阅读次数:
190
转载自:http://www.blogjava.net/tinysun/archive/2009/12/31/307952.html大端法、小端法、网络字节序 转关于字节序(大端法、小端法)的定义《UNXI网络编程》定义:术语“小端”和“大端”表示多字节值的哪一端(小端或大端)存储在该值的起始地址。...
分类:
其他好文 时间:
2014-06-28 15:48:00
阅读次数:
145
大字节序(Big Endian):低地址存高位小字节序(Little Endian):高地址存地位int main(){ int x=1; char *temp = NULL; temp= (char *)&x; if (*temp =...
分类:
其他好文 时间:
2014-06-22 23:23:02
阅读次数:
202
引言:套接字地址结构在网络编程的每个实现中都要用到,因此掌握套接字地址结构是以后编写网络程序的前提,地址结构可以在两个方向上传递:从进程到内核和从内核到进程。地址转换函数在地址的文本表达和他们存放在套接字地址结构中的二进制值之间进行转换。
大多数套接字函数都需要一个指向套接字地址结构的指针作为参数。不同协议都有自己的套接字地址结构。通用的套接字地址结构是sockaddr。IPv4套接字地...
分类:
其他好文 时间:
2014-06-22 22:54:02
阅读次数:
212
常见的80x86 CPU是先存放小值,再存放大值。这是小端字节(Little endian)序列。
而数字在互联网上传输的时候,是大端字节序列(Big endian)。所以,网络编程里有一个api是htons(),用来将主机字节顺序转化成为网络字节顺序。
常见的CPU平台如下:
处理器
操作系统
字节顺序
Alpha...
分类:
其他好文 时间:
2014-06-22 16:32:56
阅读次数:
228
引言:在进行网络通信时是否需要进行字节序转换?相同字节序的平台在进行网络通信时可以不进行字节序转换,但是跨平台进行网络数据通信时必须进行字节序转换。原因如下:网络协议规定接收到得第一个字节是高字节,存放到低地址,所以发送时会首先去低地址取数据的高字节。小端模式的多字节数据在存放时,低地址存放的是低字...
分类:
其他好文 时间:
2014-06-10 11:48:25
阅读次数:
248
把Java对象转换为字节序列的过程称为对象的序列化。把字节序列恢复为Java对象的过程称为对象的反序列化。Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的s...
分类:
其他好文 时间:
2014-06-10 10:30:37
阅读次数:
171