Menu
Coddy logo textTech

関数プロトタイプ

CoddyのCジャーニー「Fundamentals」セクションの一部 — レッスン 51/63。

C言語では、関数を使用する前に宣言することができます。関数プロトタイプは、実際の関数が定義される前に、関数の名前、パラメータ、および戻り値の型をコンパイラに伝えます。

2つの整数を加算する関数のプロトタイプを作成します:

int add(int a, int b);

次に、関数を定義します:

int add(int a, int b) {
    return a + b;
}

プロトタイプは通常 main の上に置かれ、関数自体は main の下に置かれるため、コードがよりすっきりと見えます。


これで、main関数の中でこの関数を使用できるようになります:

int main() {
    int result = add(5, 3);
    printf("%d", result);
    return 0;
}

プロトタイプがない場合、関数の定義より前にその関数を呼び出すと、コンパイルエラーが発生します。

challenge icon

チャレンジ

簡単

以下の処理を行うプログラムを作成してください:

  1. 2つの整数(lengthおよびwidth)を引数に取り、整数を返すcalculateAreaという名前の関数のプロトタイプを宣言します。
  2. 面積(length × width)を計算して返す関数を実装します。
  3. main関数内で、ユーザーから2つの整数を入力として受け取り、calculateAreaを呼び出して、その結果を出力します。

チートシート

関数プロトタイプは、関数が定義される前に関数を宣言し、コンパイラに関数名、パラメータ、および戻り値の型を伝えます:

int add(int a, int b);

次に関数を定義します:

int add(int a, int b) {
    return a + b;
}

プロトタイプは通常 main の上に配置され、関数の定義は main の下に配置されます:

int add(int a, int b);  // プロトタイプ

int main() {
    int result = add(5, 3);
    printf("%d", result);
    return 0;
}

int add(int a, int b) {  // 定義
    return a + b;
}

プロトタイプがない場合、定義の前に関数を呼び出すとコンパイルエラーが発生します。

自分で試してみよう

#include <stdio.h>

// ここに関数のプロトタイプを記述してください

int main() {
    // 変数の宣言と読み込み
    
    // ここで関数を呼び出し、結果を表示してください
    
    return 0;
}

// ここに関数を実装してください
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

Fundamentalsのすべてのレッスン