有什么比较快的方法可以将一个IP字串如‘192.168.233.255’分别放在一个byte的数组里,即
byte[0] = 192;
byte[1] = 168;
byte[2] = 233;
byte[3] = 255;
本人的方法很笨,如下:
procedure TForm1.Button1Click(Sender: TObject);
var
    i,j : Integer;
    Str  : String;
    Str1 : String;
    abyIp : array [0..3] of byte;
begin
    i := 1; j := 0;
    while i <= Length(Edit1.Text) do
    begin
      Str := ''; Str1 := '';
      while true do
        Begin
          Str := Copy(Edit1.Text,i,1);
          inc(i);
          if ((Str <>'.') and (i <= Length(Edit1.Text)+1)) then
            Str1 := Str1 + Str
          else
            begin
                abyIp[j] := StrToInt(Str1);
                inc(j);
                break;
            end;
        end;
    end;
end;VC++提供了一个函数
    byte cIP[4];
    sscanf(IPString.c_str(),"%d.%d.%d.%d",&cIP[0],&cIP[1],&cIP[2],&cIP[3]);
不知道delphi是否提供了这样的函数;
我寻求比我好的处理方法?