HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0306
★HSP★longint.hspで大きいな数を正確に読み込んでほしい!!5解決


★HSP★

リンク

2017/3/6(Mon) 16:46:42|NO.78397

longintをダウンロードしたのですが、
大きい数の変数を保存してロードするとおかしい数になります。


#module #deffunc datasave str dataname, var datavar bsave "data\\"+dataname+".dat",datavar return #deffunc dataload str dataname, var datavar exist "data\\"+dataname+".dat" if strsize != -1 : bload "data\\"+dataname+".dat",datavar return #global
このソースに問題は無いのですが
longintで大きい数の変数を保存しロードすると
保存したはずの数ではない数がロードされます。

longintダウンロードURL↓
http://www.vector.co.jp/download/file/win95/prog/fh403730.html

どうすれば保存した数を正確に読み込んでくれるのでしょうか?



この記事に返信する


★HSP★

リンク

2017/3/6(Mon) 16:53:42|NO.78398

詳しいソースです。


#include "longint.hsp" #module #deffunc datasave str dataname, var datavar bsave ""+dataname+".dat",datavar return #deffunc dataload str dataname, var datavar exist ""+dataname+".dat" if strsize != -1 : bload "data\\"+dataname+".dat",datavar return #global //変数aを保存 a = Longint(99999999999) //longintを使ってHSPの最大数値を超えて代入 datasave "test",a mes "保存した数:"+a stop //変数aをロード dataload "test",a mes "ロードしたaの数:"+a stop



★HSP★

リンク

2017/3/6(Mon) 18:01:45|NO.78400

>data\\が原因ではないでしょうか?
すいません。dataファイルを作っているので必要なのです。
わかりにくくすいません。



★HSP★

リンク

2017/3/6(Mon) 18:54:02|NO.78403


mes aに9999999999
と表示されたんでしょうか?
自分では表示されないんで、何処かおかしいのかもよくわからないんです。
すいません。



a

リンク

2017/3/6(Mon) 20:59:57|NO.78406

a = Longint("99999999999")
こうかな



★HSP★

リンク

2017/3/7(Tue) 20:58:13|NO.78416

>longint の readme.txt によると bsave bload は使えないようです。
そうですか。すいませんreadme.txtが無かったもんで(笑)
>StoreLongInt, LoadLongIntを利用してください。
ありがとうございます。解決しました。



ONION software Copyright 1997-2023(c) All rights reserved.