戻り値

 関数で処理した結果を、関数を呼び出す側に渡すためには戻り値を指定します。戻り値は戻すデータのデータ型を、定義するときの戻り値のデータ型として指定します。

 関数の定義内でデータを呼び出し側に戻すには次のように指定します。

戻り値指定の書式
retrun ;

 これから戻り値を指定しないパターンと指定するパターンを見てみましょう。

■ 戻り値を指定しない

 戻り値を指定しない場合は戻り値の型を「void」と指定します。

○ プロジェクト

 プロジェクトを作成して確認してみましょう。実行するとコンソールに結果が表示されます。

プロジェクトの種類 コンソール アプリケーション
プロジェクト名 ReturnTest1

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. class Program
  2. {
  3.  //戻り値を返さない関数
  4.  static void Add(int num1, int num2)
  5.  {
  6.   Console.WriteLine("合計:{0}", (num1 + num2));
  7.  }
  8.  static void Main(string[] args)
  9.  {
  10.   //データを入力
  11.   Console.Write("数値1:");
  12.   int data1 = Int32.Parse(Console.ReadLine());
  13.   Console.Write("数値2:");
  14.   int data2 = Int32.Parse(Console.ReadLine());
  15.  }
  16. }

○ フローチャート

○ 実行結果

数値1:20
数値2:30
合計:50

○ 解説

 12~15行目で関数を定義しています。この関数は仮引数を二つ用意しています。整数値を受け取ります。そして、戻り値は「void」と指定しているのでありません。2つの整数を加算し、表示して呼び出し元に戻ります。

 今回はMain関数で加算したい数値を入力しています。Add関数を呼び出す時に加算した二つの入力データを渡しています。今回は、計算と表示をAdd関数が担当しています。

■ 戻り値を指定する

 戻り値を一つ指定することができます。戻り値を指定する場合は関数の定義で戻り値のデータ型を指定します。

○ プロジェクト

 プロジェクトを作成して確認してみましょう。実行するとコンソールに結果が表示されます。

プロジェクトの種類 コンソール アプリケーション
プロジェクト名 ReturnTest2

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. class Program
  2. {
  3.  //戻り値を返す関数
  4.  static int Add(int num1, int num2)
  5.  {
  6.   return num1 + num2;
  7.  }
  8.  static void Main(string[] args)
  9.  {
  10.   //データを入力
  11.   Console.Write("数値1:");
  12.   int data1 = Int32.Parse(Console.ReadLine());
  13.   Console.Write("数値2:");
  14.   int data2 = Int32.Parse(Console.ReadLine());
  15.   //関数の呼び出し
  16.   int answer = Add(data1, data2);
  17.   //処理結果を表示
  18.   Console.WriteLine("合計:{0}", answer);
  19.   Console.ReadLine();
  20.  }
  21. }

○ フローチャート

○ 実行結果

数値1:40
数値2:60
合計:100

○ 解説

 12~15行目で関数を定義しています。この関数は仮引数を二つ用意しています。整数値を受け取ります。そして、戻り値は「int」と指定しているので整数値が返ります。2つの整数を加算し、呼び出し元にその結果を返します。

 今回はMain関数で加算したい数値を入力しています。Add関数を呼び出す時に加算した二つの入力データを渡しています。今回は、計算をAdd関数が、計算結果の表示をMain関数が担当しています。

前へ   次へ