本記事はC言語の関数の定義・呼び出し方法初学者の方へ向けて優しく解説しています。C言語は非常に多くのエンジニアが利用する、手を付けやすい言語です。C言語での重要な関数の定義や呼び出し方法を一緒に学習しましょう!
関数とは
関数とは、
自分で○○と入力したときに□□の作業をコンピュータにさせる動きを指定するものです。
例えば、
〇〇と入力したときに3つの変数の平均を計算させるように指定したり、
〇〇と入力したときに入力されたアルファベットを並べ替えたり、
さまざまな都合の良いプログラムを書くことができるようになります。
メリットは、
下記のような繰り返し同じ作業を行うコードを、
同じ作業を行うコードついてまとめて書くことができるようになります。
#include <stdio.h>
int main(void){
printf("ヒロキくん\n");
printf("試験勉強を開始しました\n");
printf("もしで悪い結果を取りました\n");
printf("もっと勉強を頑張りました\n");
printf("試験に合格しました。\n");
printf("テトくん\n");
printf("試験勉強を開始しました\n");
printf("もしで悪い結果を取りました\n");
printf("もっと勉強を頑張りました\n");
printf("試験に合格しました。\n");
printf("コウタくん\n");
printf("試験勉強を開始しました\n");
printf("もしで悪い結果を取りました\n");
printf("もっと勉強を頑張りました\n");
printf("試験に合格しました。\n");
return 0;
}
【実行結果】
ヒロキくん
試験勉強を開始しました
もしで悪い結果を取りました
もっと勉強を頑張りました
試験に合格しました。
テトくん
試験勉強を開始しました
もしで悪い結果を取りました
もっと勉強を頑張りました
試験に合格しました。
コウタくん
試験勉強を開始しました
もしで悪い結果を取りました
もっと勉強を頑張りました
試験に合格しました。
関数の定義・呼び出しを使えば、この長いコードの同じ部分を、たった1行でまとめることができます。
そのために、
関数の定義と、関数の呼び出しを知っておく必要があるので、
この2つをを解説します。
関数の定義
型名 関数名 (引数){
文
︙
return 式;
}
上のように関数を定義することができます。
引数については、
今は『void』を入力すればいいと考えていてください。
型名についても、『void』を入力します。
この規則に従って、
例1について関数を定義すると以下のようになります。
void doryoku(){
printf("試験勉強を開始しました\n");
printf("もしで悪い結果を取りました\n");
printf("もっと勉強を頑張りました\n");
printf("試験に合格しました。\n");
}
例1について繰り返し表示されていた4行について関数で定義しました。
関数をC言語のプログラム内で利用するためには
『関数の定義』と『関数の呼び出し』の両方の理解で力を発揮するので、次に関数の呼び出しを解説します。
今の時点で何をやっているかわからなくても大丈夫です。
関数の呼び出し
関数名(引数);
関数を定義したら、
定義した関数を呼び出すことで、関数を利用することができます。
関数の呼び出しは規則に従って下のようになります。
次の記事で解説しますが、
今の時点で、引数は空にすると考えていてください。
goukaku();
では、
『関数の定義』と『関数の呼び出し』を組み合わせて、
下のサンプルコードを記述することができます。
サンプルコード
#include <stdio.h>
/*関数の定義*/
void doryoku(void){
printf("試験勉強を開始しました\n");
printf("もしで悪い結果を取りました\n");
printf("もっと勉強を頑張りました\n");
printf("試験に合格しました。\n");
}
int main(void){
printf("ヒロキくん\n");
/*関数の呼び出し*/
doryoku();
printf("テトくん\n");
/*関数の呼び出し*/
doryoku();
printf("コウタくん\n");
/*関数の呼び出し*/
doryoku();
return 0;
}
【実行結果】
ヒロキくん
試験勉強を開始しました
もしで悪い結果を取りました
もっと勉強を頑張りました
試験に合格しました。
テトくん
試験勉強を開始しました
もしで悪い結果を取りました
もっと勉強を頑張りました
試験に合格しました。
コウタくん
試験勉強を開始しました
もしで悪い結果を取りました
もっと勉強を頑張りました
試験に合格しました。
関数を3回呼び出している点に注目しながら、
例1がどのように書き換えられたのか見比べてみてください。
関数はC言語にとどまらず、プログラミング言語を学ぶ上で非常に重要な概念です。
きっと今回の理解が、今後のプログラミング学習でプラスになることは間違いがありません。
頑張ってコードをしっかりと読みながら、理解してみてくださいね。
以上でC言語、関数の定義・呼び出しの解説を終わります。
最後まで読んでいただき、ありがとうございました\(^o^)/
C言語の超オススメ本
この1冊でC言語のほとんどが完結する、間違いのない本ですよ\(^o^)/
つまづいたときに逆引きするC言語の辞書代わりにもなります。
PCを操作する上で、トラックボールマウスも非常におすすめです!
僕も感動したこのマウスを、騙されたと思って使ってみてください!(^^)