はじめてのC#入門
第7回 C#の一文の終わり

C#も日本語と同じ「言語」なんだね。

こんにちは!

先日注文した「Oculus Go(VRゴーグル)」が手元に届きました!

いや、すげーよ、これ。。

ホラー作品とかめちゃめちゃ怖すぎて1分で再生止めるし、 プロのダンスパフォーマンスを0距離で見れて感動したり、アダ、、

いや、マジ仮想「現実」。

さて、今日は はじめてのC#入門第7回目です!

今回はC#の文の区切りかたについてご説明したいと思います。

前回のおさらい

前回は Console.WriteLineを使って、画面に文字列を表示しましたね。

そしてそのときに「引数(ひきすう)」というものについてもご説明しました。

今回はこの作ったプログラムを見ながら、C#での文の区切りについてご説明したいと思います。

日本語の場合は

C#のプログラムを見る前に、一度僕らがしゃべっている日本語について考えてみましょう。

日本語にも文の区切りがありますね。そう、読点(。)です。
例えば次のような文章

渡された文字列を表示します。エンターキーが押されるのを待ちます。

だと、ふたつの文からできていますね。
その文の区切りは「。」が表しています。

C#では

それでは、C#のプログラムの方を見てみましょう。


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _1stConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("終了するにはエンターキーを押してください");
            Console.ReadLine();
        }
    }
}

もうお気づきでしょうか。
そう、C#の文の区切りは「;(セミコロン)」で表します。

改行は意味をもたない

文の終わりを;で表すということは、別の言い方をすると「改行」は意味を持たない、ということです。

例えば、プログラムを下のように書いたとしても、まったく変わりなく動作します。


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _1stConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("終了するにはエンターキーを押してください");Console.ReadLine();
        }
    }
}

あるいは、こんな書き方をしたって変わらず動作します。


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _1stConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console
            .WriteLine("終了するにはエンターキーを押してください");
            Console
            .ReadLine();
        }
    }
}

これは日本語でも同じですね。

渡された文字列を表示します。
エンターキーが押されるのを待ちます。

のように書いたとしても、あるいは

渡された文字列を
表示します。
エンターキーが
押されるのを待ちます。

と書いたとしても、文の区切りもその内容も変わりませんね。

変わるのは読みやすさ(読みにくさ)だけ、C#でもそれは同じです。

;が後ろにつくのは文だけ

さて、それでは;が末尾についていない場所があるのはどうしてなのでしょうか。 例えば

static void Main(string[] args)
の後ろには;がついていませんね。

「{」や、「}」の後ろにも;がついていません。

ここで第4回でご説明したブロックを思い出してください。

{}(波かっこ)は直前に書かれた内容の範囲を表します。これをブロックと呼びます。

とご説明しました。

これは、演劇の台本などに例えるとわかりやすいかもしれません。

あらお「違うんだ。あの娘はただの同僚なんだよ。」
たまこ「もう何度目よ。」

「」(かぎかっこ)は直前に書かれた名前のセリフ範囲を表していますね。

このとき、下のようには書かないですよね。

あらお。「違うんだ。あの娘はただの同僚なんだよ。」。
たまこ。「もう何度目よ。」。

これは、名前もかぎかっこも「文ではない」からです。

C#も同じで「;」がつくのは文の末尾だけ、ということですね。

文の後ろの;は省略できない

ここまで見てきたように、コンピューターは「;」を見て文の区切りを判定しています。

なので文の後ろに;を書き忘れると、エラーが出てしまいます。

忘れずに文の後ろには;をつけるようにしましょう。

今回はここまでです!

C#での文の区切りかた、イメージはつかめましたか?

次回は「変数」についてご説明したいと思います!

次回へ続く

>> 続きの記事
【はじめてのC#入門】第8回 変数をつかってみよう!