next up previous
Next: 補足: main が返す値は ? Up: 計算機言語 I 第 4 Previous: 前回までの復習と補足

関数の定義と記述

関数は, 使う前に定義しなければなりません. 定義では, 関数の名前と返り値の 型を与える必要があり, その意味で変数とほぼ同じ扱いを受けます. コンパイラは, その定義を見て機械語を作り出すのです.

printf 等の関数をこれまで使って来ましたが, これらも実は定義して から使っています. これらの定義は今まで記述して来た,

#include <stdio.h>
で自動的になされた事になっているのです. この文は, stdio.h と いうファイルを取り込むと言う意味で(include の意味は, ご存知だと思います), stdio.h には, printf が定義されています. 不等号 $<, >$ で囲まれている場合 /usr/include ディレクトリにあるファイルを読み込みます.
e023199@cc1> less /usr/include/stdio.h
を実行して, printf が定義されている事を確かめてください. (ついでに, less での検索の方法を思い出して下さい. 特定の文字を検索 する技術は, プログラミングでは重要です.)


関数の定義は, 次の形になります.

関数の返り値の型  関数の名前(引数の型  引数名, …)


関数の定義では, 次の決まり(言語としての仕様)があります.

従って, 今まで何も気にしていませんでしたが, main() は整数型の値を 返す関数です.


また, 関数そのもの記述は次のようになります.

関数の返り値の型  関数の名前(引数の型 引数名, ・・・)
{
      関数内で用いる変数(局所変数)の宣言 ;

      関数の処理 ;

      return 式 ;
}
最後の return の部分で, この名前の関数は, そこの式の値を返します.



Subsections

Next: 補足: main が返す値は ? Up: 計算機言語 I 第 4 Previous: 前回までの復習と補足