C言語 | 関数 | 関数を作る

繰り返し使う処理は、再利用可能な関数としてまとめられます。

処理を関数にまとめる

main() はアプリケーションのエントリポイントですが、プログラムには別の関数も定義できます。

戻り値の型 関数名(パラメータリスト) {
  
}

値を受け取らず、値を返さない関数は void で書けます。

#include <stdio.h>

void Function(void) {
  printf("Kitty on your lap\n");
}

int main(void) {
  Function();
  Function();
  return 0;
}

コンパイラが戻り値とパラメータを検証できるように、呼び出し前に関数を定義または宣言してください。未宣言の関数を呼び出す方法は古い構文であり、現在のC規格では許可されません。

関数の処理が終わると、呼び出し元へ制御が戻ります。void 関数では return を省略できますが、早く終了するために return; を使うこともできます。

void Function(void) {
  printf("Kitty on your lap\n");
  return;
}

関数呼び出しは入れ子にできます。

#include <stdio.h>

void Function2(void) {
  printf("Function2() : return\n");
}

void Function1(void) {
  printf("Function1() : Call Function2()\n");
  Function2();
  printf("Function1() : return\n");
}

int main(void) {
  printf("main() : Call Function1()\n");
  Function1();
  printf("main() : return\n");
  return 0;
}

各関数は呼び出された場所へ制御を戻し、最終的に main() へ戻ります。