读书人

大端big endian即高字节在前是什么意

发布时间: 2012-03-22 17:43:57 作者: rapoo

大端big endian,即高字节在前是什么意思

ipstr:array [0..31] of byte;
ip是32 32 32 2E 38 36 2E 32 30 37 2E 32 30 32
现在我要把IP的16进制存放到ipstr里,按照大端big endian,即高字节在前排序,未使用的数据位皆填0x00。
请教ipstr里的内容应该是什么样的呢????


[解决办法]
高字节在前排序是啥?

Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);const ip='32 32 32 2E 38 36 2E 32 30 37 2E 32 30 32';var  i,j:Integer;  ipstr:array [0..31] of byte;begin  ZeroMemory(@ipstr[0],sizeof(ipstr));  i:=0;  j:=1;  while j<length(ip) do  begin    ipstr[i]:=strtoint('$'+Copy(ip,j,2));    inc(i);    inc(j,3);  end;end;
[解决办法]
32位int是4个字节
0x12ab34ef在int的4个字节里的存放模式

读书人网 >.NET

热点推荐