ヘッダファイル(C)
概要
Cはほぼ読むだけ。とりあえず備忘録としての自分まとめ。
ヘッダファイルを利用しない
- あるファイルの関数から別ファイルの関数を呼び出す場合、その呼び出す関数の引数、戻り値を知っていないといけない。それを知るために、呼び出し側ではその関数の宣言を利用する。
- 利用側で宣言を知ることができない場合、暗黙の宣言が利用される。
- 宣言が定義と合致しているかはちぇっくなし。
- 別ファイルの関数などを使う場合に都度、自分で宣言を書かないといけない
暗黙の宣言
- 呼び出し側で例えば関数の情報(宣言)を知ることができない場合int型を返す、引数なしの関数としてみなされる。
- 自分で宣言を書いて定義と異なっていたとしても同じ
- コンパイラの気持ちとしては別ファイルにあるはずなので
リンク時
にみつかるやろ~
エラー
- 発覚するのはリンク時。
コンパイル時
にエラー見つけたい。
ヘッダファイルを利用
- 宣言を一つにまとめられる。再利用できる。
- ヘッダファイルに、関数、変数の宣言かく。
コンパイル時
に例えば関数の呼び出し側、定義側、とヘッダファイルにかかれている宣言が正しい(引数、戻り値の型)などをチェックしてくれる。コンパイル時
にみつかる。