文字列

文字列

文字列はダブルクォテーション(“)で括ります
“文字列”

・ダブルクォテーションで囲まれた”文字列”が文字列です

文字列の結合は+で行います

改めて文字列の紹介をすると、
まずはダブルクォテーション(“)で括りましょうという事が第一です。
次に、OPTION指定で変更しない限り
比較する場合は、大文字小文字の区別はしません。(ABC=abc)
文字列をつなげる場合は+を使います。
まとめて以下のスクリプトで確かめてみましょう。

//文字列の結合
MOJ1 = "ぐろーばるわーるど"
MOJ2 = " is a word very difficult."
PRINT MOJ1 + MOJ2
//文字列の比較(OPTION指定無し)

MOJ3 = "THIS IS MY CUP"
MOJ4 = "this is my cup"
IFB MOJ3 = MOJ4
 PRINT "↓↓同じ文字です↓↓"
 PRINT MOJ3 + ":" + MOJ4
ENDIF

結合の際は順番を考えよう

例えば下記のようなスクリプトはどういう結果になるでしょうか?
PRINT “14 + 6 = ” + 14 + 6
14 + 6 = 20とはならずに
14 + 6 = 146となってしまいます。
計算の優先順位に差が無い場合
コンピューターは左から計算をします。

なのでまず”14 + 6 = “という文字列に14という文字列が結合され、
続いて”14 + 6 = 14″という文字列に6が結合されてしまうのです。
詳細は演算式の優先順位でご確認できますが、 解決策としては以下のように、明示的に”(“と”)”で計算の優先度を上げることになります。

この投稿の続きを読む »

タグ

2012年8月15日 | コメントは受け付けていません。 |

カテゴリー:構文・制御文

OPTION

OPTION

OPTION指定をする
OPTION <以下の項目を指定、複数の場合は(,)カンマ区切りも可>

EXPLICIT・・・変数宣言強制、全ての変数でDIM もしくはPUBLIC宣言が必要
SAMESTR・・・文字比較、置換、サーチにて大文字、小文字を区別
OPTPUBLIC・・・PUBLIC変数の重複定義を禁止
OPTFINALLY・・・Try-Finally間で強制終了が発生した時にも必ず Finally部を実行
SPECIALCHAR・・・実行時に特殊文字(< #CR>< #DBL>< #TAB>)の変換を無視
SHORTCIRCUIT・・・論理演算(IF、IFB、WHILE、REPEAT)で短絡評価
DEFAULTFONT= フォント名・・・フォント、サイズを変更(MSGBOX、FUKIDASI、ログ等に反映)
e.g. “MS ゴシック,16″
POSITION=X, Y・・・位置変更
LOGPATH= ログパス名・・・ログファイルのパス、ファイル名を変更
LOGLINES= ログ行数・・・ログ最大行数を変更
LOGFILE= ログ出力モード・・・1:出力しない、2:日付を付けない、3:秒も付ける、4:以前のログは消去
DLGTITLE= タイトル・・・INPUT, MSGBOX, SLCTBOX でのタイトルを変更

スクリプト全体のお約束事を最初に宣言

OPTION指定をすることにより、そのスクリプト全般での決まりごとを
定義できます。

//変数宣言の強制と表示位置を設定
OPTION EXPLICIT,POSITION=0,0
DIM OK = 11133
PRINT OK

使い道は様々

OPTION指定は特に使う場面が無ければ、
お目に掛かる事も少ないでしょう。
複数メンバでスクリプトを作成する際に、
ログファイルの出し方や、変数宣言の仕方、
大文字小文字や特殊文字の取り扱い方法などの全般事項に対する
認識をスクリプトの宣言を持って一致させる際には重宝します。

ちなみに、SHORTCIRCUITにある
短絡評価とは何でしょうか。
複数条件を評価する際に、条件一致した場合は、残る条件を評価しない事を言います。
IF ① A = 100 OR ② B = 200 THEN PRINT “OK”
短絡評価の場合、上記のような式があった場合、もしAが100ならばBの評価はしないでPRINT “OK”が処理されます。
サンプルスクリプトは下記の通りです。

この投稿の続きを読む »

タグ

2012年8月10日 | コメントは受け付けていません。 |

カテゴリー:構文・制御文

このページの先頭へ