83.1 ARGV[ ]

call コマンドにより gnuplot スクリプトに入った場合、呼び出し側からの パラメータは、2 つの仕組みで利用できます。各パラメータは、まず文字列と して変数 ARG1, ARG2, ... ARG9 に保存します。さらにそれらは配列 ARGV[9] の各要素としても保存します。こちらは、数値は複素変数値として保存します が、それ以外はすべて文字列として保存します。ARGC はパラメータの個数を 保持します。よって、以下の call 後には


    call 'routine_1.gp'  1 pi "title"

以下の 3 つの引数を routine_1.gp 内で以下の値として利用できます:


    ARGC = 3
    ARG1 = "1"         ARGV[1] = 1.0
    ARG2 = "3.14159"   ARGV[2] = 3.14159265358979...
    ARG3 = "title"     ARGV[3] = "title"

この例では、ARGV[1] と ARGV[2] は可能な限りの精度を持つ浮動小数値とな りますが、ARG2 は書式 "%g" による文字列として保存されるため精度が落ち ています。

ARGC とそれに対応する配列 ARGV[ARGC] は関数ブロック呼び出しの内部でも 利用可能です。しかし、関数ブロック呼び出しでは、文字列変数 ARG1,... は 作られません。

竹野茂治@新潟工科大学
2024-12-02