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,是不是?