execstr
文字列中のScilabコードを実行
呼び出し手順
execstr(instr)
ierr = execstr(instr, 'errcatch' [,msg])
引数
instr
文字列のベクトル, 実行するScilab命令.
ierr
整数, 0 ばたはエラー番号.
msg
値'm' または'n'
を有する文字列.
デフォルト値は'n'.
説明
引数instrで指定したScilab命令を実行します.
instrの中では継続記号 (..) を使用する
べきではないことに注意してください.
'errcatch'フラグが指定されない場合,
エラー処理は通常と同様に行われます.
'errcatch'フラグが指定された場合,
instrで定義された命令を実行す際に
発生したエラーはエラーメッセージを発生せず,
instr 命令の実行を
(エラーが発生した場所で)破棄し,
エラー番号に等しいierrを返して
復帰します.
この場合,エラーメッセージの出力は
msgオプションにより次のように
制御されます:
"m"
エラーメッセージは表示され,記録されます.
"n"
エラーメッセージは表示されませんが,
記録されます ( lasterror参照).
これがデフォルトです.
ierr = execstr(instr, 'errcatch')
は構文エラーも
処理することができます.
この特徴は,ユーザへの問い合わせにより得られた命令を
評価する際に有用です.
例
0 then
disp("Trigger an error");
else
disp("execstr is happy");
end
// variable2 exists ... no error is triggered by execstr
variable2=[2,3];
if execstr('variable2;','errcatch')<>0 then
disp("Trigger an error");
else
disp("execstr is happy");
end
]]>
参照
evstr
lasterror
error
try