C言語 | 関数 | 関数の宣言

関数宣言は、本体を定義せずに関数名、戻り値の型、パラメータの型をコンパイラへ伝えます。

関数プロトタイプ

後で定義する関数を呼び出す場合は、先にプロトタイプを宣言します。

戻り値の型 関数名(パラメータリスト);
#include <stdio.h>

void CharLoop(char chMark, int iNum);

int main(void) {
  CharLoop('*', 30);
  printf("\n---\n");
  CharLoop('*', 40);
  printf("\n");
  return 0;
}

void CharLoop(char chMark, int iNum) {
  int iCount;
  for (iCount = 0; iCount < iNum; iCount++)
    printf("%c", chMark);
}

現在のコードではプロトタイプを使ってください。パラメータがない関数は void を明示します。

void Function(void);

C言語で void Function(); と書くと、パラメータなしのプロトタイプではなく、パラメータが未指定の関数宣言になります。

パラメータ名の省略

プロトタイプでは型だけが必要なので、パラメータ名は省略できます。

void Function(int, char, double);
void CharLoop(char chMark, int);

ただし、値の役割が分かりやすくなる場合は名前を書くと便利です。