プログラムの一部を記述したサブルーチンのことをC言語では関数と呼びます。
Javaではメソッドと呼ぶなど、言語により様々です。
詳細は後にしますが、品質の良いプログラムを作る為には、
この関数に切り分けてプログラムを管理することが大事です。
要点をまとめて先に言ってあげておくことは…。
作る必要の無いプログラムを作らないこと、類似関数を作らないの二つが基本です。
関数には引数があり、関数にデータを渡して処理をさせることができます。
これは数学の関数と似たような概念です。
そして、結果を戻り値として返すことができます。
これが関数の型になります。戻り値が無い場合はvoidです。
渡すのはあくまでもデータであり、変数ではありません。
変数を渡したいときはポインタを利用しますが、今回は割愛します。
しかし、無闇に変数を渡して処理させることは好ましくありません。
変数のスコープや依存関係をやたらと広げることはデータの破壊を招き、バグを生む原因になります。
用例プログラムは、数学の関数の基本である一次関数で示します。
最も単純なので分かりやすいと思います。
用例プログラムでは関数のプロトタイプ宣言をしていますが、
関数を先頭にもっていったら省略できますが、
宣言はしたほうがいいです。C++ではこうしないとエラーが出ます。
#include <stdio.h>
int func(int x);
void main(){
int r,i;
for(i=0;i<100;i++){
r = func(i);
printf("%d\n",r);
}
}
// 一次関数(y=x+5)の処理
int func(int x){
int y;
// 一次関数の式
y = x+5;
// 結果を戻り値として渡す
return y;
}