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

delphi 代码,求解释解决方案

2013-08-04 
delphi 代码,求解释ipAddress : StringReplace(172,016,087,003, ., ,, [rfReplaceAll])slList :

delphi 代码,求解释


  ipAddress := StringReplace('172,016,087,003', '.', ',', [rfReplaceAll]);

  slList := TStringlist.Create;
  slList.CommaText := ipAddress;

  fillchar(arr, sizeof(arr), 0);

  pbyte(@arr[0])^ := strtoint(slList.strings[2]);
  pbyte(@arr[1])^ := strtoint(slList.strings[3]);


  word_ip := pword(@arr[0])^; //855 ????

能告诉我这部分代码主要是想要什么结果,最后那句为什么是855? Delphi
[解决办法]
32位int,delphi有 integer和dword 分别对应 有/无符号整数
[解决办法]
procedure TForm1.Button1Click(Sender: TObject);
var
  MyIPString :TStringList;
  intIP :Longword;
  i :integer;
begin
  MyIPString := TStringList.Create;
  intIP := 0;
  try
    MyIPString.DelimitedText :=StringReplace('172,16,87,164', '.', ',', [rfReplaceAll]);
    for i := 0 to MyIPString.Count-1 do
    begin
      intIP := intIP+StrToInt(MyIPString.Strings[i]) shl ((3-i)*8);
    end;
  finally
    FreeAndNil(MyIPString);
  end;
  showmessage(IntToStr(intIP));
end;
結果:2886752164,是不是這個數?

热点排行