有什么比较快的方法可以将一个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是否提供了这样的函数;
我寻求比我好的处理方法?
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是否提供了这样的函数;
我寻求比我好的处理方法?
解决方案 »
- 我要地址我要地址我要地址我要地址我要地址我要地址指向pnl1.Components[i]) 的地址
- 我想把我的一些程序放到数据库里,程序编译的时候从数据库里拿源程序??
- 求合作软件开发,一个数据库程序的开发。有意者请与我联系。Email:[email protected]
- DELPHI群,欢迎大家加入4441178
- 不爽,散
- 请高手关注!!运行时发生了:error creating cursor handle!
- delphi中如何表达2开12方的计算公式
- opendialog如何判断一个打开文件的大小???
- 这个关键字怎么用?
- 纯粹算法问题,人人都可能得分!!
- 求delphi7里的一个动动!
- ####关于打包的简单问题
仁兄,你把题目的意思弄反了!???