Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ ヘッダー、プロトタイプ | Functions
C基礎

bookヘッダー、プロトタイプ

メニューを表示するにはスワイプしてください

このコース全体を通して、stdio.h ファイルを一貫して使用しています。このファイルは標準入出力ヘッダーとして機能します。この中には、すべてのレッスンで使用してきた printf() 関数のプロトタイプが含まれています。

Main.c

Main.c

copy
12345678
//#include <stdio.h> int main() { printf("Using `printf()` without `stdio.h`"); return 0; }

stdio.h ファイルを除外すると、printf() 関数は動作しなくなります。ヘッダーなしでこの関数を呼び出すと、エラーが発生します。

ヘッダーファイルの理解

stdio.h のようなヘッダーファイルには、変数、配列、関数プロトタイプの宣言が含まれる。これらはプロジェクトコードをモジュール化し、必要に応じてコンポーネントを追加できるようにする。この手法により、プロジェクトの効率化が図られる。

関数プロトタイプ

関数プロトタイプは、実装を伴わない関数宣言。プロトタイプはコンパイラに対する「予告」として機能し、関数の存在を知らせる。

function_type function_name(arguments);

通常の関数に似ているが、詳細は含まれない。末尾のセミコロン(;)に注意。では、専用のヘッダーファイルで関数プロトタイプをどのように扱うか?

複数ファイルのプロジェクト

これまで、変数や関数は main 関数と同じファイル内に記述してきた。しかし、実際の開発現場ではこれは一般的ではない。ここでは、コンデンサの容量と抵抗値から充放電時間を推定する関数を考案する。

プロジェクトは3つのファイルに分割される。

  1. main.c - すべての関数が呼び出される主要ファイル。
  2. func.h - 関数プロトタイプを格納するファイル。
  3. func.c - コンデンサの充放電時間計算関数の実装が記述されるファイル。
main.c

main.c

function.h

function.h

function.c

function.c

copy
12345678910
#include "func.h" int main() { R = 10; C = 150; printf("Charge/discharge will be %.2f ms\n", chrg_dchrg(R,C)); return 0; }
Note
注意

%.2f は、結果を小数点以下2桁で表示することを指定。

このプログラムを実行すると、次のようになります:

"Charge/discharge will be 7.50 ms"
question mark

C言語において関数プロトタイプは何をしますか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 5.  5

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 5.  5
some-alt