我正在編寫一個將八進制數轉換爲十進制和十六進制的程序。我寫了一個叫OctToInt
的函數。將八進制數轉換爲十進制和十六進制
function OctToInt(Value: string): Longint;
var
i: Integer;
int: Integer;
begin
int := 0;
for i := 0 to Length(Value) do
begin
int := int * 8 + StrToInt(Copy(Value, i, 1));
end;
Result := int;
end;
我調用這個函數以這種方式:
var oct:integer;
begin
oct:=OctToInt(Edit13.Text);
Edit15.Text:=IntToStr(oct);
end;
當我鍵入34
(八)十進制數應該是28,但該計劃給了我220你知道爲什麼嗎?
另外,你有任何關於轉換器OctToHex的想法嗎?
['你確定你寫過嗎?](http://www.delphitricks.com/source-code/math/convert_an_octal_number_to_integer.html):-)? – TLama
我已經看到:D –
它可能會發生,畢竟給你的變量明智的名字是不廣泛舉行的信仰系統。 Var int:整數。我的眼睛在流血。 –