Hello World -- 最初のプログラム (C# プログラミング ガイド)

更新 : 2007 年 11 月

次のコンソール プログラムは、従来の "Hello World!" プログラムの C# バージョンで、「Hello World!」という文字列を表示します。

// A Hello World! program in C#
using System;
namespace HelloWorld
{
    class Hello 
    {
        static void Main() 
        {
            System.Console.WriteLine("Hello World!");

            // Keep the console window open in debug mode.
            System.Console.WriteLine("Press any key to exit.");
            System.Console.ReadKey();
        }
    }
}

次に、このプログラムの重要な部分を検討してみることにします。

説明

最初の行はコメントになっています。

// A Hello World! program in C#

「//」という文字があると、これ以降その行はコメントになります。次の例に示すように、テキスト ブロックを /* と */ で囲んでコメントにすることもできます。

/* A "Hello World!" program in C#.
This program displays the string "Hello World!" on the screen. */

Main メソッド

C# プログラムには、Main メソッドが必要です。このメソッドの中で制御を開始して終了します。Main メソッドでは、オブジェクトを作成し、ほかのメソッドを実行します。

Main メソッドは静的メソッドで、クラスまたは構造体の中に存在します。前の "Hello World!" の例では、Hello という名前のクラスの中に存在しています。次の方法のいずれかで Main メソッドを宣言してください。

  • void 型を返すことができます。

    static void Main()
    {
        //...
    }
    
  • int 型を返すこともできます。

    static int Main()
    {
        //...
        return 0;
    }
    
  • どちらの戻り値の型でも、次のように引数を受け取ることができます。

    static void Main(string[] args)
    {
        //...
    }
    

    または

    static int Main(string[] args)
    {
        //...
        return 0;
    }
    

Main メソッドのパラメータは string の配列で、プログラムの実行時に使用したコマンド ライン引数を表しています。C++ とは異なり、この配列には実行可能 (exe) ファイルの名前は含まれていないことに注意してください。

Main メソッドの末尾で ReadKey を呼び出すと、F5 キーを押してデバッグ モードで実行するときに、出力を読み取る前にコンソール ウィンドウが終了することを回避できます。

コマンド ライン引数の使い方の詳細については、「Main() とコマンド ライン引数 (C# プログラミング ガイド)」および「方法 : C# DLL を作成して使用する (C# プログラミング ガイド)」の例を参照してください。

入出力

C# プログラムは、普通、.NET Framework のランタイム ライブラリが提供する入出力サービスを使用します。System.Console.WriteLine("Hello World!"); ステートメントでは、ランタイム ライブラリの Console クラスに含まれる出力メソッドの 1 つである WriteLine メソッドが使用されます。WriteLine メソッドは、文字列パラメータを標準出力ストリームに出力し、最後に改行を付け加えます。別の入出力操作には、他の Console メソッドを使用します。using System; ディレクティブをプログラムの開始時にインクルードした場合は、完全に修飾せずに System クラスおよびメソッドを直接使用できます。たとえば、System.Console.Writeline を指定する代わりに、Console.WriteLine を呼び出すことができます。

using System;
Console.WriteLine("Hello World!");

入出力メソッドの詳細については、「System.IO」を参照してください。

コンパイルと実行

"Hello World!" プログラムをコンパイルするには、Visual Studio IDE でプロジェクトを作成するか、またはコマンド ラインを使用してください。Visual Studio コマンド プロンプトを使用するか、vsvars32.bat を実行して、Visual C# ツール セットのパスをコマンド プロンプトに設定します。

コマンド ラインからプログラムをコンパイルするには :

  • テキスト エディタを使ってソース ファイルを作成し、ファイル名を Hello.cs として保存します。C# のソース コード ファイルでは、.cs という拡張子を使います。

  • コンパイラを起動するには、次のコマンドを入力します。

    csc Hello.cs

    プログラムにコンパイル エラーがない場合は、Hello.exe というファイルが作成されます。

  • プログラムを実行するには、次のコマンドを入力します。

    Hello

C# のコンパイラとオプションの詳細については、「C# コンパイラ オプション」を参照してください。

参照

概念

C# プログラミング ガイド

Visual C# のサンプル

参照

インサイド C# プログラム

その他の技術情報

C# リファレンス