プログラムを書きはじめるための基本

色々な文法要素の説明に入っていく前に、今回はまず、プログラムを書きはじめるための基本を押さえておきましょう。

- 目次 -

最初に覚える3つのルール

プログラミング言語は、色々な書き方のルールがあります。 それらのルールは、サンプルのプログラムを読んだり、実際に書いたりしながら、少しずつ覚えていきます。 このガイドも、そういう構成になっています。

しかし、最初は何のルールも知らないため、サンプルプログラムを読もうにも、どこからどう読めばよいか分からないかもしれません。 そこでまずは、「最初の一歩」となるルールを、3つ導入しましょう:

ルール1. プログラム内には、行いたい処理を、順番に並べて書く

最も重要なルールはこれです。VCSSLは「手続き型」という種類の言語の一つですが、手続き型の言語では、

行いたい処理を並べて書くと、原則として、書いてある順に処理されていく

という基本的なルールがあります。 もっとも、関数や制御文など、処理される順序が変わる場面もあります。ただ、基本はあくまでも「書いてある順」です。

ルール2. 処理の単位(文)の終わりには、「 ; 」記号を付ける

行ってほしい個々の処理は、ある程度のまとまりをもった形で書く必要があり、それを「文」と呼びます。 そして、C言語風の文法を採用する言語では、多くの場合、文の終わりに「 ; 」(セミコロン)記号を付けるというルールがあります。 VCSSLもそうで、文の終わりに「 ; 」を付ける必要があります。

ルール3. 単なる文字列として扱ってほしい箇所は、「"」記号で囲う

プログラムでは、「123」や「1.23」などの数値と同じように、「abcde」のような文字列(※)も、値として扱いたい場面がよくあります。 ただ、プログラム内に、文字列をそのまま書くと、「プログラムとして実行してほしい記述内容」との区別が付かなくなりますよね。 そのため、単に文字列の値として扱ってほしい箇所は、「"」(ダブルクォーテーション)記号で囲うというルールがあります。

※ プログラム内でデータとして扱う文章の事を「文字列」と呼びます。 一般には少し変な呼び方かもしれませんが、プログラミングの世界では一般的な呼び方です。

ルール 1 〜 3 を実際に使った例う

以上で、最初に押さえておくべきルールは全部です。実際にそれらを使った例として、以下のコードを見てみましょう。

SequentialPopup.vcssl

ここで使っている「popup」は、小さなウィンドウを立ち上げて、そこに値やメッセージを表示する機能を持つものです。 カッコ ( ) の中には、表示したい内容を指定します。ここでは、「"」で囲って文字列のメッセージを指定しています。 数値や変数なども指定できます。

上のプログラムを実行すると、以下のような処理が行われます:

小さなウィンドウに「Hello」と表示される

(「OK」を押してウィンドウを閉じる)

小さなウィンドウに「World」と表示される

(「OK」を押してウィンドウを閉じる)

小さなウィンドウに「!」と表示される

つまり、まず上のプログラムにおける、先頭から最初の「;」までの間に書かれた文「popup("Hello")」が実行されたわけです。 その後、次の「;」までの間に書かれた文「popup("World")」が実行され、最後に次の「;」までの間の文「popup("!")」が実行されたわけですね。

注意が必要な、よくある落とし穴

ところで、プログラミングの入門時には、特によくハマりがちな、典型的な落とし穴もいくつか存在します。 ここでは、それらを列挙的に紹介しておきましょう。

半角文字と全角文字との混同に注意!

プログラミング言語には、「 足し算は『+』記号を使って書く 」といったように、特定の記号を使うルールが多数存在します。 一方で、PCで扱える文字の中には、「よく似ているけれども実は別の文字」という、紛らわしい文字がたくさんあるため、間違えないように注意が必要です。

特に間違いやすいのは「半角文字」と「全角文字」です。半角文字は、英語の入力モードの時に、キーボードを打つとそのまま入力される文字です。 全角文字は、日本語の入力モードの時などで出てくる、幅が太めの文字です。以下がその実例です:

- 半角文字 -
ABCDE abcde 12345 +-*/ "


- 全角文字 -
ABCDE abcde 12345 +ー*/ ”

よく似ていますが、比べてみると少し違いますよね? プログラムは、基本的には前者の「半角文字」を使って書く必要があります。 間違って全角文字で書くとエラーになります。特に「全角の空白」などは、混入しても気づくのが難しく厄介です。気を付けましょう。

文字化けを防ぐためには、文字コードを明示しておく

プログラム内には、全角文字を使える箇所もあります。典型例としては「文字列の中身」です。例えば "あいうえお" のように、「 " 」記号で囲まれた中に、全角文字で日本語のメッセージを書くような場面はよくあります。

このような場合に、しばしば「文字化け」が問題になります。文字化けは、プログラムのファイルを保存した際の文字コードと、それを実行する際に読み込まれる文字コードが異なる場合に生じます。最近の環境では、読み書き共に 「UTF-8」がスタンダードになりつつあるため、あまり問題は生じません。しかしたまに文字化けに出会う事があります。

そういった場合は、プログラムの先頭行で文字コードを明示する事で、文字化けを防げます。例えば文字コードが Shift_JIS である場合は:

coding Shift_JIS;

と書きます。 UTF-8 なら:

coding UTF-8;

です。

便利な機能(コメント)

最後に、必須ではありませんが、便利な「コメント」機能を押さえておきましょう。 コメントは、プログラム内にメモを書き込める機能です。書いた内容は、実行時には読み飛ばされるため、プログラムの動作には影響しません。 VCSSLでは以下の通り、C言語スタイルのコメントの記法を採用しています。

一行に収まるコメントは、先頭に「 // 」を付ける

まず、一行の範囲内に収まるコメントです。これは、コメントの先頭に「 // 」(二連続のスラッシュ)を付けます。以下が例です:

CommentLine.vcssl

実行すると:

Hello
World

のように、コメントだけ読み飛ばされていますね。なお、「 // 」は行の途中でも書けて、その場所以降がコメントになります:

CommentLineFromMiddle.vcssl

実行結果は先ほどと同じです。

複数行のコメントは、「 /* 」と「 */ 」ではさむ

続いて、複数行に跨るコメントです。これは、開始地点に「 /* 」(スラッシュとアスタリスク)、終了地点に「 */ 」を書きます。 そうすると、両者の間が全て読み飛ばされます。以下が例です:

CommentBlock.vcssl

実行すると:

Hello
World

のように、コメント部分が読み飛ばされています。 なお、VCSSLの複数行コメントの /* 〜 */ は、C言語とは少し異なり、入れ子(多重の階層構造)にする事もできます。