C言語入門0. プログラミングの流れ
<C言語入門に戻る>
プログラミングの流れ
C言語を使ったプログラミングでは、まず人間が考えながら「ソースコード」というものを計算機に打ち込む。ソースコードはプログラムの設計図と言われることが多いが、むしろ(人間に理解可能な形態での)プログラムそのものである。 ソースコードは「テキストファイル」として作成される。テキストファイルとは、文字コードのみで構成される、最もシンプルな文書ファイルの形式である。以下にC言語のソースコードの例を示す(眺めるだけでよい)。

図 ソースコードの例 (昼の長さを計算するプログラムの一部)
ソースコードが完成すると、それを計算機によって「コンパイル」する。コンパイルとは、ソースコードを、計算機がそのまま実行することが可能な言語(機械語) に翻訳することである。コンパイルによって、実行可能なファイルが生成される。そのようなファイルのことを、「バイナリーコード」と呼ぶ。
コンパイルが済めば、プログラムは実行可能である。しかし、できたてのプログラムは誤りを多く含むのが普通なので、バイナリーコードを実行するとすぐにエラーが出て停止したり、期待したのと違う結果が出たりする。そのたびに、ソースコードを検査・修正し、コンパイルし、また実行・・・ということを繰り返して、誤り(「バグ」という)を修正していく。この作業を「デバッグ」という。図式的に書けば、以下のようになる:

図 プログラミングの流れ。赤字は人(「考える」)、青字は機械がすること(「コンパイル」「実行」)である。
プログラミングに必要なもの
プログラミングには、(計算機はもちろんとして)以下のものが必要である:
- OS ... 計算機の基本ソフトである。Windows, Linux, MacOSなどが、パソコンでは一般的だが、大規模な数値計算でよく用いられるのはUnixである。LinuxやMacOSXはUnixの一種である。Windowsの上でも、Cygwinという、疑似的なUnix環境を構築するフリーソフトがある。この実習ではLinuxを用いる。
- テキストエディター ... テキストファイルを作成するのに使うアプリケーションソフト。プログラミングでは、ソースコードをテキストエディターで作成・編集する。 Windowsでは「メモ帳」や「ワードパッド」「秀丸」「TextPad」などが代表的である。LinuxやUnixではviやEmacs (mule) が代表的である。この実習ではviを用いる。
- コンパイラー ... コンパイル、すなわちソースコードをバイナリーコードに変換するためのアプリケーションソフトである。C言語にもいろいろなコンパイラーがあるが、この実習ではgccというコンパイラーを使う。gccはオープンソースであり, 広く使われている。
- デバッガー ... デバッグを支援するアプリケーションソフトである。この実習では使わない。
- 人間の頭と集中力 ... プログラミングにおいて最も重要なものである。もちろん、この実習でも用いる。

図 C言語プログラミング中のLinux画面の例。右のウィンドウではviエディターでC言語のソースコードを編集中である。
問題0-1: 以下の言葉の意味と, 相互の関係を説明せよ。
- ソースコード
- コンパイル
- バイナリコード
- バグ
- デバッグ
(ブラウザの「戻る」ボタンで戻ってください。)
Keyword(s):
References:[C言語入門]