首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

网络字节序、padding有关问题

2012-10-21 
网络字节序、padding问题求教下,struct s1{type1 data1type2 data2...}socket传整个结构是不是不行啊,有b

网络字节序、padding问题
求教下,
struct s1
{
  type1 data1;
  type2 data2;
  ...
}

socket传整个结构是不是不行啊,有byte order和padding什么的问题

基本类型的byte order由协议保障,但data2 地址一定比data1高吗?有无编译器吧data1排最高呢。
多谢!!

[解决办法]
编译器不会把data1排最高的。
但是如果type1 不是 char, 就要对data1进行byte-order进行调整。
[解决办法]
同意1L
[解决办法]
现在32的操作系统都只是对最基本的数据类型进行对齐,只要保证结构体是四字节对齐的基本没什么问题,最好别有padding,原先有的编译器对非对齐时的变量是向哪个方向靠说不准.
[解决办法]
socket传整个结构是不是不行啊,有byte order和padding什么的问题
-----------
data1都排前面
可以传输,在最开始处加上:#pragma pack(1)

热点排行