C#入門 最簡単プログラミング6 関数

2019年3月9日

C#最簡単プログラミングの6回目です。私は仕事で計測器の制御にC#を使っていますが、測定器の制御に使えるぶんだけのC#を紹介しようと思っていましたが、多分これで最後になります。

1回から6回まで超簡単ですよ。見てみてください。とりあえずこれだけ知っていれば計測器制御に使うC#は全部カバーできると思います。

見てみてください。とりあえずこれだけ知っていれば計測器制御に使うC#は全部カバーできると思います。

C#入門 最簡単プログラム

今回はC#の関数について紹介します。

1 関数とは

これまで紹介してきたプログラムは上から下に順番にコードを実行しました。しかし、実際大きいプログラムを作ると、再利用したい部分がたくさん出てきます。その部分を1つの塊にしておいてコードの本流から呼び出せば、重複した書き方をしなくても良くなります。

計測器制御のプログラミングでは、コードが長く何度も実行される計測器との通信をこの関数にまとめて、めんどくさいコードを全部関数の中に書いておきます。例えば

label1.Text = kansu1().toString();

のように実行するとラベル1に計測の結果が表示されます。もちろんkansu1()の中の命令は別の場所に書いてあります。

kansu1の内容は次のように書きます。

        private double kansu1()
        {
            double kaeri = 100;

            return kaeri;
        }
    

このサンプルは単純に変数kaeriに100を代入し、それが関数の戻り値となり本流に戻ったときに=で他へ代入できるようになっています。

つまりkaeriに代入した100が、label1に表示されます。 ここはちょっと難しいですね。 実際に計測器制御の際はkansu1の中に計測器との通信の確立、測定命令、値の取得、通信の切断の手順を書きます。(手順はまた別の記事に紹介します)

2 サンプルコードの実行

では関数のサンプルを実行してみましょう。C#のフォームにボタンとラベルを追加して、ボタンをダブルクリックして以下のコードを追加します。

       private void button1_Click(object sender, EventArgs e)
        {
            label1.Text = kansu1().ToString();
        }

        private double kansu1()
        {
            double kaeri = 100;

            return kaeri;
        }

これを実行するとラベルの表示が100になると思いますが、どうでしょうか。

まとめ

これで計測器制御をするためにC#の基礎知識はすべて終了です。簡単だったと思います。もちろん作るプログラムの内容によってはもう少しテクニックを使う場面がありますが、それらはそのつどGoogleで検索すれば解決法をすぐに見つけられると思います。参考のためプログラム全文を貼り付けておきます。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            label1.Text = kansu1().ToString();
        }

        private double kansu1()
        {
            double kaeri = 100;

            return kaeri;
        }
    }

次からは計測器制御に特化したC#のプログラミングを紹介したいと思います。

関連記事

C#入門 最簡単プログラム