StrToInt64で、変換されないようにするには?

解決


やまだ  2014-06-04 00:03:37  No: 46378

こんにちは。
開発環境は、delphiXE3 enterprise(update2適用)、win7(sp1)です。

いつもお世話になっております。

integerの最大値2147483647を超える数値が考えられるので、integerの上位のint64を使おうと考えました。

プログラムの中で、strtointを使っているところを以下のように変更しました。

if (length(strTemp)>length('2147483647'))or((length(strTemp)=length('2147483647'))and(strTemp>'2147483647'))) then
begin
 intRet:=strtoint64(strTemp);
end
else
begin
 intRet:=strtoint(strTemp);
end;

仮に、strTemp:='5555555555'の場合、5555555555でない数値が返ってきます。

これを5555555555が戻るようにするにはどうしたら良いのでしょうか?

よろしくお願いします。


やまだ  2014-06-04 00:15:21  No: 46379

すみません。

間違っていました。
受けるintRetがintegerだったので変換がかかっていただけでした。

int64で宣言した変数に入れた場合問題なく取得できました。

お騒がせしました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加