.NET Framework SDKで始める.NETプログラミング(前編)

5.Hello World展覧会(2) - C#−


デジタルアドバンテージ 遠藤孝信
2001/02/10

p.1 p.2 p.3 p.4 p.5 p.6 p.7 p.8 p.9 p.10 p.11 p.12

C#版Hello World

 まずは、各言語でコマンド・プロンプトに“Hello World”のメッセージを出力するコンソール・アプリケーションを作ってみよう。

 最初に使用する言語はMicrosoft.NETとともに世に紹介され、.NETプログラミングの本命言語と呼び声高いC#である。ソースコードは次のようになる。なお、このソースコードの行頭に挿入されている数値は、説明を容易にするために便宜上挿入した行番号であり、実際のソースコードには入力しない(以下、掲載するすべてのリストも同じ)。

 1: // cshello.cs
 2:
 3: using System;
 4:
 5: class HelloClass
 6: {
 7:  static void Main()
 8:  {
 9:   Console.WriteLine("Hello C# World!");
10:  }
11: }
C#版Hello Worldのソースコード
1: コメント行。C#では、“//”で始まる行はコメントとして処理される。プログラムの実行には何ら影響を及ぼさない。
3: このプログラムで使用するクラス・ライブラリのネームスペース宣言。
5: クラス名の定義。ここでは例として、“HelloClass”としてみた。
7: HelloClassの唯一のメソッド。プログラムが実行されると、最初にこのメソッドが呼び出される。
9: コンソールに対する文字列の出力。具体的にはこのように、ConsoleオブジェクトのWriteLineメソッドを呼び出す。

 ここで簡単にプログラムの説明をしておこう。

 1行目の“//”で始まる行はコメント行で、プログラムの実行には何ら影響を及ぼさない。今回紹介するすべてのプログラムでは、このようにソースコードの1行目にファイル名をコメントとして記すことにする。

 3行目の“using”、はプログラム内で使用するクラス・ライブラリのネームスペースを宣言するものだ。.NET Frameworkでは、クラス名の衝突を避けるため、ネームスペースにより階層的にクラスを分類している。9行目で文字列を出力するために使用しているConsoleクラスはSystemネームスペースに属しており、本来ならば、

System.Console.WriteLine(……)

と記述すべきところだが、毎回このような記述をするのは長ったらしいので、using文でネームスペースを指定し、以降での指定を省略できるようにする。このSystemネームスペースには、広く一般に使用されるクラスが含まれているので、C#プログラムにかぎらず、たいていのマネージド・コードでお約束のように指定されている。

 C#では、すべてのコードはクラス内で定義される。この例では、“HelloClass”というクラス名をつけた(5行目)。

 HelloClassクラスが持つ唯一のメソッドはMainメソッドであり、これはプログラムの実行時に最初に呼び出される特別なメソッドである(7行目)。名前の大文字/小文字は区別されるので、Mainの最初の“M”は大文字でなければならない。小文字で“main”と書いてコンパイルしても、エントリ・ポイントが定義されていないというコンパイル・エラーになる。

 Mainメソッドでは、ConsoleオブジェクトのWriteLineメソッドを呼び出して、コンソールに文字列を表示する(9行目)。なお今回使用したWriteLineでは、出力した文字列の最後に自動的に改行コードが追加される。改行コードが不要なら、WriteLineではなく、Console.Writeメソッドを使用する。

 これらのコードをテキスト・エディタで入力し、ファイル名を“cshello.cs”として保存する。C#のソースコードには、拡張子“cs”を使用する。

 作成したソースコードをコンパイルするには、コマンド・プロンプトを開き、ソースコード・ファイルを保存したディレクトリ(この例ではX:\prog\cs)に移動し、C#コンパイラ(csc.exe)を起動する。これにより、cshello.exeという実行ファイルが生成される。以下は、cshello.csをコンパイルし、生成されたcshello.exeプログラムを実行したところである。

C#版Hello Worldの実行結果
ConsoleクラスのWriteLineメソッドに指定した“Hello C# World!”の文字列が表示された。

関連記事(Insider.NET内)
特集
.NET Framework入門
Insider's Eye
Visual Studio.NETベータ1日本語版の入手法を総括する
関連リンク
マイクロソフトの.NET Framework SDKベータ1 日本語版のダウンロード・ページ
.NET Framework SDKベータ1(英語版)のダウンロード・ページ
IEのホームページ
Microsoft Data Access Components (MDAC) 2.6 RTM (2.60.6526.3) 日本語版 ダウンロード・ページ
最新障害情報ページ
 

 INDEX
  [特集] .NET Framework SDKで始める.NETプログラミング(前編)
    1..NET Framework SDKとは?
    2..NET Framework SDKをインストールする前に
    3..NET SDKのインストール
    4.Hello World展覧会(1)
  5.Hello World展覧会(2) - C# -
    6.Hello World展覧会(3) - VB.NET,JScript.NET -
    7.Hello World展覧会(4) - マネージド C++ -
    8.Hello World展覧会(5) - MSIL -
    9.Hello World展覧会(6) - Windows Forms -
   10.Hello World展覧会(7) - Webサービス -
   11.Hello World展覧会(8) - Webアプリケーション -
 
  [特集].NET Framework SDKで始める.NETプログラミング(後編)

 



Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間