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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
0611
LOPPOstrfで%I64がうごかない5解決


LOPPO

リンク

2009/6/11(Thu) 23:58:24|NO.25645

strfで64ビット整数を表示するプログラムが3.1では動いていたが3.2BETA3では動きません。
これは仕様変更ですか?
出来れば動くようにして欲しいです。

#include "kernel32.as" freq=0.0 QueryPerformanceFrequency varptr(freq) mes strf("%I64d",freq)



この記事に返信する


KA

リンク

2009/6/13(Sat) 13:33:31|NO.25697

>>mes strf("%I64d",freq)

2^64回ぐらいはヘルプと一緒に見直してみましょう。
他の部分は分かりません。



LOPPO

リンク

2009/6/13(Sat) 16:59:22|NO.25709

あなたこそ私の質問文を見直してみましょう



b

リンク

2009/6/13(Sat) 19:09:44|NO.25714

> あなたこそ私の質問文を見直してみましょう
こういう態度は良くないですよ

ちなみに

#uselib "kernel32" #func QueryPerformanceFrequency "QueryPerformanceFrequency" var QueryPerformanceFrequency freq mes strf("%f", freq)
コレは質問とは的外れでしょか。



f(雑魚寝中)

リンク

2009/6/13(Sat) 19:49:53|NO.25718

・・・。

まあ、マニュアルに

>書式指定文字列は、Cランタイムライブラリがサポートしているsprintfの書式
をそのまま流用することができます。

と書いてる以上は、動かないと困るんだろうが・・・。
元々HSPは64bit整数なんか使わないから、HSPユーザーが質問の意味を理解出来なくても
仕方がないだろう。

64bitなら一応

mes strf("%lld",freq)
でlonglongに対応できるが、通るかどうかは知らない。

単なるバグかHSPで使用しない型をエラーにしたのか、どちらが理由かは知らないが。



LOPPO

リンク

2009/6/14(Sun) 11:04:57|NO.25754

>こういう態度は良くないですよ
KAさんの口調をまねてみたんですが、まあそうですね気をつけます。
>コレは質問とは的外れでしょか。
すみませんが、そうですね。

>元々HSPは64bit整数なんか使わないから、HSPユーザーが質問の意味を理解出来なくても
>仕方がないだろう。
私の書き方も悪かったかもしれないのでもっと詳しく書いておきます。
最初に提示してあるスクリプトは、64bit整数をdouble型の変数に格納しておいて、それをstrfで表示するスクリプトです。
これがHSP3.1では問題なく動作していたのですが、最新の3.2BETA3ではエラーになります。
hsp32b3.txtには"strf関数の変更について"で(上位互換となっているので過去のスクリプトは、問題なく動作します。)と書いて
あるんですが、これについては例外なんでしょうか。
出来れば動作するようにして欲しいです。



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