関数とは

プログラミング言語での関数とは、複数の処理をまとめ、それらをひとつの処理(関数の呼び出し)で行えるようにしたものです。本コースでもSTEP02以来、pinMode関数やdigitalWrite関数など、いくつもの関数を使ってきました。

今まで使ってきた関数は、いずれもArduinoフレームワークが提供するものでしたが、プログラマが自分で関数を作ることも可能です。このようなプログラマ(ユーザ)が作る関数を、ユーザ定義関数(またはユーザ関数)といいます。ライブラリやフレームワークが提供する関数(これらをライブラリ関数と言います)とユーザ定義関数の違いは、関数の作者が誰かどうかということだけなので、以降は特に紛らわしくなければユーザ定義関数も単に「関数」と呼ぶことにします。

プログラミング言語の関数は、数学の関数のように入力したデータに対してある処理を加え、結果を出力することができます。例えば、一次関数 y=2x+3 に x の値を入力すると、「x を 2 倍したものに 3 を加える」という処理によって y の値が決まりますが、同様の処理をプログラミング言語の関数でも行うことができます。

関数内での処理内容には制限は無く、関数の中でさらに別の関数での処理が行われたり、入力値でも出力値でもない第3の値の処理が行われたりすることもごく一般的です。C言語の関数の場合、入力値や出力値も必須ではありません。

関数は、次STEPで学ぶ「ソースコードの分割」を行う上でも必須となってきます。

具体的にどのように使うか見ていきましょう。

前の記事

その他のビット演算

次の記事

関数の定義と呼び出し