SRC質問掲示板Mk2
(現在 過去ログ124 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■21666 / inTopicNo.1)  変数の制御限界を超える
  
□投稿者/ ルドロフ -(2009/08/06(Thu) 09:37:39) [ID:nSHW2kvx]
    変数の制御限界32766を疑似的に超えたような状態を作り出そうとしています。

    このようなチャートでは無理でした。

    ↓例ここから--------------------------------------

    ネオグローバルグルングルン
    1 = "9"
    2 = "4"
    Return

    ↑例ここまで--------------------------------------

    上記の例のようなファイルをSRCのシステムを使って作成する。

    作ったファイルをロードしてサブルーチンコールを行う。

    上記の方法以外にいい案があれば教えてください。

    お願いします。
引用返信/返信 削除キー/
■21667 / inTopicNo.2)  Re[1]: 変数の制御限界を超える
□投稿者/ 中箱 -(2009/08/06(Thu) 11:58:56) [ID:Cvz6iMKe]
    2009/08/07(Fri) 02:39:11 編集(投稿者)

    #ルドロフさんのHNをルド「ル」フと間違えていたので訂正。失礼しました

    >変数の制御限界32766を疑似的に超えたような状態を作り出そうとしています。

    >このようなチャートでは無理でした。

    >↓例ここから--------------------------------------

    >ネオグローバルグルングルン
    >1 = "9"
    >2 = "4"
    >Return

    >↑例ここまで--------------------------------------

    >上記の例のようなファイルをSRCのシステムを使って作成する。
    >↓
    >作ったファイルをロードしてサブルーチンコールを行う。

    >上記の方法以外にいい案があれば教えてください。


    正直、どのような操作が行われることを期待して上記のイベントファイルを記述したのかが分かりません。


    おそらくルドロフさんは、イベントファイルについての理解が足りていません。

    完全に間違ったイベントファイルだけ提示されても回答の助けにはなりません。
    どのような理論で32766を超えた値を扱おうとしているのか、イベントファイルの提示ではなく、日本語での説明が不可欠だと思います
引用返信/返信 削除キー/
■21672 / inTopicNo.3)  Re[2]: 変数の制御限界を超える
□投稿者/ ルドロフ -(2009/08/07(Fri) 00:59:24) [ID:nSHW2kvx]
    まず例として出したイベントファイルは訂正します。

    ↓例ここから--------------------------------------

    ネオグローバルグルングルン:
    1 = "9"
    2 = "4"
    Return

    ↑例ここまで--------------------------------------

    「完全に間違った」ということで訂正されたファイルは想定されていないと思うので、
    もういちど送信します。
引用返信/返信 削除キー/
■21673 / inTopicNo.4)  Re[3]: 変数の制御限界を超える
□投稿者/ 中箱 -(2009/08/07(Fri) 03:20:00) [ID:Cvz6iMKe]
    繰り返しになりますが
    ルドロフさんがこのような断片だけで語っても、無駄に記事を増やすだけで問題の解決にはつながらない気がします。

    意義が全く推察できない名称の変数の操作を二つ行うだけのイベントファイルを提示して後は察しろ、と言われても無理な話です。
    他人はあなたの思考はもちろん、正確な目的も暗黙の前提も知りはしません。


    他人に回答を求めるのであれば、自分以外が理解できるような説明をしなければ質問する意味が無いんじゃないでしょうか。


    PS.
    なんだか文面のあちこちで既視感を覚えているのですが、
    ルドロフさんは以前「レッドマン」「ムキムキゴースト」「匿名希望」のようなHNで何度かやり取りをした方だったりしませんか?

    私としては、相手の癖や理解度・知識によって説明の詳しさとか色々変えた方が良いと考えているので、参考までに。
引用返信/返信 削除キー/
■21674 / inTopicNo.5)  Re[4]: 変数の制御限界を超える
□投稿者/ ルドロフ -(2009/08/07(Fri) 09:58:59) [ID:nSHW2kvx]
    先の例で私のやりたいことは
    「外部ファイルによる変数作成」
    です。
    オリジナルのコマンドを使っています。

    NeoGlobalコマンド

    ↓NeoGlobalコマンドここから--------------------------------------

    NeoGlobal:
    Switch Args(2)
    Case Before
        Eval("$(Args(1))ナンバー") = Eval("$(Args(1))ナンバー") + 1
        RemoveFile "Eve\NeoGlobal\$(Args(1))$(IIf((Args(6) <> 0),"No.$(Wide(Format(Eval("$(Args(1))ナンバー"),0000)))","")).eve"
        Open "Eve\NeoGlobal\$(Args(1))$(IIf((Args(6) <> 0),"No.$(Wide(Format(Eval("$(Args(1))ナンバー"),0000)))","")).eve" For 追加出力 As Eval("ネオグローバル$(Args(1))ファイル")
        Print Eval("ネオグローバル$(Args(1))ファイル") "ネオグローバル$(Args(1))$(IIf((Args(6) <> 0),"No.$(Wide(Format(Eval("$(Args(1))ナンバー"),0000)))","")):"
    Case Now
        Eval("$(Args(1))カウント") = Eval("$(Args(1))カウント") + 1
        Print Eval("ネオグローバル$(Args(1))ファイル") "$(Args(3))[$(Args(4))] = "$(Args(5))""
        If Args(6) <> 0 Then
            If (Abs(Eval("$(Args(1))カウント")) / (Args(6) - 2)) = Int(Abs(Eval("$(Args(1))カウント")) / (Args(6) - 2)) Then
                Print Eval("ネオグローバル$(Args(1))ファイル") "Return"
                Close Eval("ネオグローバル$(Args(1))ファイル")
                Eval("$(Args(1))ナンバー") = Eval("$(Args(1))ナンバー") + 1
                RemoveFile "Eve\NeoGlobal\$(Args(1))$(IIf((Args(6) <> 0),"No.$(Wide(Format(Eval("$(Args(1))ナンバー"),0000)))","")).eve"
                Open "Eve\NeoGlobal\$(Args(1))$(IIf((Args(6) <> 0),"No.$(Wide(Format(Eval("$(Args(1))ナンバー"),0000)))","")).eve" For 追加出力 As Eval("ネオグローバル$(Args(1))ファイル")
                Print Eval("ネオグローバル$(Args(1))ファイル") "ネオグローバル$(Args(1))$(IIf((Args(6) <> 0),"No.$(Wide(Format(Eval("$(Args(1))ナンバー"),0000)))","")):"
            EndIf
        EndIf
    Case After
        Print Eval("ネオグローバル$(Args(1))ファイル") "Return"
        Close Eval("ネオグローバル$(Args(1))ファイル")
    Case Load
        For ネオグローバルナンバー = 1 To IIf((Args(6) <> 0),"$(Eval("$(Args(1))ナンバー"))",1)
            Wait 0
            Require "Eve\NeoGlobal\$(Args(1))$(IIf((Args(6) <> 0),"No.$(Wide(Format(ネオグローバルナンバー,0000)))","")).eve"
            Eval("ネオグローバル$(Args(1))$(IIf((Args(6) <> 0),"No.$(Wide(Format(ネオグローバルナンバー,0000)))",""))")
        Next
    EndSw
    Return

    ↑NeoGlobalコマンドここまで--------------------------------------

    次に使用例です。

    ↓使用例ここから--------------------------------------

    NeoGlobal バケラッタ詳細データ Before "バケラッタ$(Var[2])" "$(Eval("$(Var[2])番号"))" Var[問題ファイル2] 3000
    NeoGlobal バケラッタ詳細データ Now "バケラッタ$(Var[2])" "$(Eval("$(Var[2])番号"))" Var[問題ファイル2] 3000
    NeoGlobal バケラッタ詳細データ After "バケラッタ$(Var[2])" "$(Eval("$(Var[2])番号"))" Var[問題ファイル2] 3000
    NeoGlobal バケラッタ詳細データ Load "バケラッタ$(Var[2])" "$(Eval("$(Var[2])番号"))" Var[問題ファイル2] 3000

    ↑使用例ここまで--------------------------------------

    読み方(?)は
    ・Args(1) = 一時ファイルの名前(区切り数を超える数の場合、番号が後ろに付く)
    ・Args(2) = 処理の指示(Before、Now、After、Loadの4つ)
    ・Args(3) = 作成される配列の名前
    ・Args(4) = 作成される配列のインデックス
    ・Args(5) = 変数の中身
    ・Args(6) = 区切りの数(一つのファイルの行数を指定する)
    ・こちらで指定した専用フォルダ(今はEve\NeoGlobal\)が必要になる。


    と、ここまでやっても結局は
    「変数の生成タイミングを変える」
    ということしかできなかったようです。

    「1つの変数を上書きして使い回す」
    という方法もあるにはあるのですが、
    今回の件には使えないと思います。

    だからここで新しい方法を知りたいのです。
    よろしくお願いします。

引用返信/返信 削除キー/
■21675 / inTopicNo.6)  Re[5]: 変数の制御限界を超える
□投稿者/ 中箱 -(2009/08/07(Fri) 15:39:24) [ID:Cvz6iMKe]
    説明が全く不明瞭なままですね。


    例えば、
    >「外部ファイルによる変数作成」
    とはどういうことかの説明がありません。
    同時に、それによってどのような効果が得られることを期待しているのでしょう?


    これは、タイトルにある「変数の制御限界」についても同様です。
    変数の何を指して「制御限界」と言う独特の単語を用いているのか、明確な説明は不可能なのでしょうか。
引用返信/返信 削除キー/
■21676 / inTopicNo.7)  Re[5]: 変数の制御限界を超える
□投稿者/ Mr -(2009/08/07(Fri) 21:06:09) [ID:i5S9sUuV]
    横槍というか私の勝手な解釈なのですが、

    >中箱さん
    SRCで変数は3万ちょいしか作れなかったはずです。
    で、それ以上の変数をiniファイルのような別ファイルに一時的に出力しよう、ということなのではないのでしょうか。(おそらく中箱さんも、こーいうことなんじゃないかと薄々思ってませんか?)

    >ルドロフさん
    制御限界だなんだという話はおいといて、また一時ファイルなんて難しいこと言わずに「外部ファイルに変数を持つ方法」について質問されればそれほど複雑にはならないのかなと。


    SRCの外に変数を作るのであれば、以下のサブルーチン・関数を作ることで実現可能であると思います。
    (SRCの外の変数を、便宜上外部変数と呼ぶことにします)
    1.外部変数を宣言するサブルーチン
    2.外部変数に値を格納するサブルーチン
    3.外部変数を参照する関数
    4.外部変数を解放するサブルーチン

    外部ファイルへ書き込む外部変数の書式は、以下のものを順番に書き込んでいく形式でいいでしょう。
    (とりあえずインデックスなどはつけずに一旦組んでみることをおすすめします)
    外部変数名,外部変数の値
    外部変数名,外部変数の値
    外部変数名,外部変数の値



    以下、各関数の内容についてです。

    1.外部変数を宣言するサブルーチン
    このサブルーチンは、外部の変数を書き込むファイルに、指定した変数と指定した値を書き込むものになるでしょう。
    すでに宣言されている変数を同じ名前の変数が宣言されようとした時の動作などはお好みで。

    2.外部変数に値を格納するサブルーチン
    このサブルーチンは、外部の変数を書き込むファイルから、指定した変数を探し出し、その値を指定した値に変更するものになるでしょう。
    宣言されていない変数が指定されていた場合の処理などはお好みで。

    3.外部変数を参照する関数
    この関数は、外部の変数を書き込むファイルから、指定した変数を探し出し、その値を返すものになるでしょう。
    これだけは返り値が必要なので、関数となります。
    これも、存在しない変数を指定された場合の処理などはお好みで。

    4.外部変数を解放するサブルーチン
    このサブルーチンは、外部の変数を書き込むファイルから、指定した変数を探し出して削除するものになるでしょう。

    一気に書きましたが、どんなeveファイルを書けば良いかイメージが湧いたでしょうか?
    意図されているものと全然違うようでしたらごめんなさい。
引用返信/返信 削除キー/
■21679 / inTopicNo.8)  Re[6]: 変数の制御限界を超える
□投稿者/ ルドロフ -(2009/08/10(Mon) 18:06:40) [ID:nSHW2kvx]
    Mrさんの推測通りのものが完成しましたので報告させていただきます。
    こちらで使いやすいように少々アレンジを加えています。

    目的は達せられましたので、「解決済み」とさせていただきます。

解決済み!
引用返信/返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Pass/

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

- Child Tree -
- Antispam Version -