はじめての C

[Learning GNU C]

第2章 関数から 始めよう

2.1. 関数とは なにか?

関数は C の プログラムを 組み立てている block (区画) のことだ。 ほとんどの C の プログラムは 関数と 呼ばれる -- 名前を もった -- code の block から 成り立っている。 プログラムを 書くときには 必要な 仕事を 実行する 多くの 関数を 書くことになる。 しかし 多くの プログラマに 必要な 例えば 画面に text を 表示すると いうような 平凡な 仕事が たっぷり 存在する。 誰もが 車輪を 再発明する かわりに GNU の システムでは そうした 多くの 仕事に 対して あらかじめ 定義された 関数の ライブラリが 準備されている。 長年に わたって 数千の こうした 関数が 蓄えられた。 もし BINGO のような ゲームを プレイする プログラムを 書いていたなら ゲームに 特定した 関数を 自分で 書かないと いけないだろうが 他の人が すでに 乱数発生用の 関数を 書いているのを 見出すだろう。

全ての C の プログラムは main() と 呼ばれる 関数を 1つ もたなければ ならない -- それは プログラムの 実行を どこから 始めるかと いうことだ。 プログラムの code は main() の中に 完全に 含まれるだろうが 1つの プログラムは 多くの 小さな 関数に 分割されるのが より 一般的だ。

われわれの 見る 最初の 役にたつ code は 1つの classic だ。 コンパイルし 実行すると それは 画面上に 簡単な あいさつを 表示する。 プログラムは main() と 呼ばれる 関数を 定義し それは printf() と 呼ばれる 関数を 呼び出す (使用する)。 printf() は われわれの ために "Standard Device Input/Output Library" によって 用意された 関数だ。 この ライブラリは 全ての GNU システムで 準備されている。 これが その 小さな プログラムだ。

Example 2-1. hello.c

#include <stdio.h>

int
main()
{
printf("hello, world\n");

return 0;
}

先に 進むまえに この プログラムを コンパイルして 実行する。 全て うまくいけば terminal (標準出力装置) に "hello, world" という 文字列の text が 表示されるだろう。 忘れてしまった 場合の コンパイルの コマンドは こうだ。

ciaran@poor:~/book$ gcc -Wall -o hello hello.c
ciaran@poor:~/book$ ./hello
hello, world
ciaran@poor:~/book$

もし なんらかの エラー あるいは 警告メッセージが でたなら あなたの code と この本の code とが 正確に 合致しているかを 調べる。 どんな メッセージを 受け取るにしても それは どこで 間違ったかを その code の line で 伝える。 code が 正確に タイプされていれば こうした メッセージを 受け取ることは ないだろう。