我这里有一个这样的函数: (有IntToBin()吗,怎么找不到呀)uses math;//value是输入的整数,len是输出的二进制数的长度 function inttobin(value,len: integer): string; var i,m: integer; begin result:=''; if (value>=0) and (value<int(intpower(2,len))) then for i:=1 to len do begin m:=trunc(int(intpower(2.0,len-i))); result:=result+inttostr(value div m); value:=value mod m; end; end;//在edit1中输入整数,eidt2就显示对应的二进制数 procedure TForm1.Button1Click(Sender: TObject); begin edit2.text:=inttobin(strtoint(edit1.text),3);end;
sorry,写错了.应该是:
1 -> 001
2 -> 002
等等.
最好能设定字符串显示长度.好象有函数的.
138 -> 0138
9999 -> 9999
1 -> 0001整数转换成字符串,固定位数,不足的用0补.
begin
//No.1 Format()
ShowMessage(Format('%.3d', [2]));
//No.2 FormatFloat()
ShowMessage(FormatFloat('000', 2));
//No.3 RightStr() for StrUtils;
// uses StrUtils;
//...
ShowMessage(RightStr('00' + IntToStr(2), 3));
end;
(有IntToBin()吗,怎么找不到呀)uses
math;//value是输入的整数,len是输出的二进制数的长度
function inttobin(value,len: integer): string;
var
i,m: integer;
begin
result:='';
if (value>=0) and (value<int(intpower(2,len))) then
for i:=1 to len do
begin
m:=trunc(int(intpower(2.0,len-i)));
result:=result+inttostr(value div m);
value:=value mod m;
end;
end;//在edit1中输入整数,eidt2就显示对应的二进制数
procedure TForm1.Button1Click(Sender: TObject);
begin
edit2.text:=inttobin(strtoint(edit1.text),3);end;