第 1 章 プログラムを 動 かそう 概 要 ここでは 情 報 処 理 センターの 計 算 機 環 境 を 使 用 してプログラミングを 勉 強 するために 覚 えておかなければならな い 種 々のソフトウェアの 使 用 方 法 について 学 びます また C 言 語 を 用 いて 書 いたプログラムのソースコードをコンパイルし 実 行 する 方 法 について 学 びます この 章 の 目 標 テキストエディタを 使 用 して プログラムのソースコードを 書 く 方 法 を 覚 える ソースコードをコンパイルし 実 行 する 方 法 を 覚 える 補 足 テキストエディタとは 文 字 のみのファイル(テキストファイル)を 作 成 編 集 するためのアプリケーションソ フトウェアのことです ソースコードとは 人 間 がプログラミング 言 語 を 用 いて 記 述 したソフトウェアの 設 計 図 のことで 英 数 字 や 記 号 で 表 現 された 文 字 列 のことです コンパイルとは 人 間 がプログラミング 言 語 を 用 いて 作 成 したソフトウェアの 設 計 図 (ソースコード)を コン ピュータ 上 で 実 行 可 能 な 形 式 (オブジェクトコード)に 変 換 することです なお この 変 換 を 行 うソフトウェア をコンパイラといいます 下 記 の 図 表 を 参 考 に 用 語 の 確 認 をしておきましょう エクスプローラ テキストエディタ ソースコード ソースファイル 実 行 ファイル オブジェクトコード テキストエディタでファイルを 開 いてみた 場 合 -1-1-
1.1 プログラミング 環 境 の 準 備 プログラミング 言 語 には 種 々のものがありますが ここでは 広 く 普 及 している C 言 語 を 勉 強 します 本 学 の 情 報 処 理 センターでは Windows 及 び Linux の 両 方 の 環 境 で C 言 語 を 使 用 できます しかし 普 段 使 用 する 環 境 は Windows の 環 境 だと 思 います そこで ここでは 本 学 の Windows 環 境 で C 言 語 の プログラミングを 行 う 方 法 について 説 明 します では 最 初 に プログラミングを 行 うための 環 境 の 準 備 を 行 いましょう! (1) 作 業 フォルダの 作 成 作 成 したプログラムのソースファイルや 実 行 ファイルを 保 存 しておくフォルダを 作 成 します ここでは マイドキュメント フォルダの 中 に c という 名 称 のフォルダを 作 成 することにします スタート メニューから マイドキュメント を 選 択 します 次 に ファイル メニューから 新 規 作 成 - フォルダ を 選 択 し 新 規 フォルダを 作 成 します なお この フォルダの 名 称 を ここでは c という 名 称 にすることにします 注 意 :フォルダの 名 称 は c 以 外 の 自 分 の 好 きな 名 称 にしても 大 丈 夫 です -1-2-
(2)エクスプローラの 設 定 C 言 語 のソースファイルのファイル 名 には 必 ず 拡 張 子 として.c をつけなければなりません 例 えば file.c となります また 実 行 ファイルの 拡 張 子 は.exe となります しかし 通 常 の 設 定 ではこれらの 拡 張 子 は 表 示 されません そこで エクスプローラの 設 定 を 変 更 して 拡 張 子 を 見 ることができるようにします ツール メニューから フォルダオプション を 選 択 します フォルダオプションのウィンドウが 開 いたら 表 示 タグを 選 択 します そして 詳 細 設 定 の 中 にある 登 録 されている 拡 張 子 は 表 示 しない についているチェックをはずします こ -1-3-
れで.c 及 び.exe の 拡 張 子 を 見 ることができるようになります (3)ソフトウェアの 確 認 次 に ディスクトップ 上 に 下 記 に 示 す 2 つのソフトウェアのショートカットがあるか 確 認 して 下 さい プログラ ミングのために これらのソフトウェアを 使 用 します TeraPad Cygwin TeraPad Cygwin(シグウィン) なお これらのソフトウェアの 内 TeraPad は 文 章 を 書 くためのテキストエディタで 皆 さんの 場 合 は プ ログラムのソースコードを 書 くために 使 用 します また Cygwin(シグウィン) は Windows 環 境 で UNIX の 機 能 を 利 用 してプログラムを 作 成 したり UNIX のコマンドを 使 用 したりすることができるツールで この 講 義 では プログラムのコンパイルと 実 行 を 行 うために 使 用 します -1-4-
1.2 ソースコードを 書 いてみよう ここでは テキストエディタを 使 用 して プログラムのソースコードを 書 く 方 法 を 説 明 します (1) TeraPad の 起 動 まず ディスクトップ 上 にある TeraPad のショートカットをダブルクリックして TeraPad を 起 動 して 下 さ い (2) 編 集 モードの 設 定 表 示 メニューから 編 集 モード を 選 択 し C 言 語 のモードを 選 択 します これにより C 言 語 で 使 用 する 関 数 等 が 色 分 けされ プログラムのソースコードが 大 変 見 やすくなります 新 規 にプログラムのソースコードを 書 く 場 合 は このままソースコードを 書 きます なお 既 存 のソースファイ ルを 開 いて 修 正 する 場 合 は ファイル メニューから 開 く を 選 択 して ソースファイルを 開 きます なお このとき ファイルの 種 類 が C/C++ファイル になっていることを 確 認 して 下 さい ファイルの 種 類 が 間 違 っていると ファイル 名 が 表 示 されません 注 意 通 常 のテキストファイル( 拡 張 子 が.txt のファイル)の 場 合 は ファイルの 種 類 が ユーザー (*.txt,*.htm,*.html,*.cgi,*pl) もしくは すべてのファイル(*.*) となっている 必 要 があります これ 以 外 の 種 類 では ファイル 名 が 表 示 されません -1-5-
(3)ソースコードの 入 力 画 面 上 に Hello! と 表 示 するプログラムのソースコードを 下 記 に 示 します キーボードからこのソースコード を 入 力 して 下 さい #include<stdio.h> main() { printf("hello!\n"); } 注 意 Hello! の 箇 所 は 日 本 語 で こんにちは! としても 大 丈 夫 です しかし これ 以 外 の 箇 所 では 半 角 の 英 数 字 と 記 号 を 使 用 してソースコードを 記 述 する 必 要 があります 特 に 全 角 の 空 白 は 画 面 の 表 示 上 は 半 角 の 空 白 と 同 じで 判 別 できません 注 意 が 必 要 です C 言 語 のソースコードでは タブや 半 角 空 白 また 改 行 は 意 味 を 持 ちません 上 記 の 例 のように ソースコー ドが 見 やすいようにレイアウトして 下 さい (4)ソースファイルの 保 存 C 言 語 の 場 合 ファイル 名 には 必 ず 拡 張 子.c をつけなければなりません 例 えば file.c となります な お ソースファイルの 保 存 場 所 は 1.1 プログラミング 環 境 の 準 備 で 作 成 した 作 業 用 フォルダに 保 存 して 下 さ い また ソースファイルのコンパイルと 実 行 は TeraPad を 終 了 しなくても 行 うことができます したがって 次 の TeraPad の 終 了 は 行 わなくても 大 丈 夫 です (5) TeraPad の 終 了 ソースファイルをコンパイルし 実 行 した 結 果 特 に エラーメッセージ 等 の 表 示 が 無 く 実 行 結 果 にも 問 題 が なければ ファイルを 閉 じて TeraPad を 終 了 して 下 さい ファイル メニューから 保 存 して 閉 じる または 閉 じる で TeraPad を 終 了 できます -1-6-
補 足 (1) 既 存 のソースファイルの 開 き 方 保 存 されているソースファイルをダブルクリックしても TeraPad は 起 動 せず 他 のソフトウェアが 起 動 します 既 存 のソースファイルを 開 く 場 合 は 必 ず TeraPad を 起 動 してから ファイル メニューから 開 く を 選 択 して ソースファイルを 開 いて 下 さい (2)コメント( 注 釈 )の 付 け 方 プログラム 中 にコメント( 注 釈 )を 付 けることができます /*で 始 まり */で 終 わる 箇 所 がコメントです なお コメントは 入 れ 子 にはできません 例 : #include<stdio.h> main() { printf("hello!\n"); /* 画 面 に hello!の 文 字 を 表 示 */ } (3) 全 角 の 空 白 を 表 示 する 方 法 TeraPad には 全 角 空 白 の 入 力 がわかるように 表 示 する 機 能 があります 表 示 メニューから オプション を 選 択 して 下 さい オプションウィンドウの 表 示 タブを 選 択 すると マーク 欄 の 右 に 全 角 空 白 というのがあります こ のチェックボックスをチェックすると 全 角 空 白 が 画 面 上 に 表 示 されるようになります どのように 全 角 空 白 が 表 示 されるのか 具 体 的 に 確 認 してみて 下 さい -1-7-
(4) 漢 字 / 改 行 コード Windows や Unix といった OS 毎 に 文 字 を 表 すコードが 異 なります TeraPad は このために 文 字 コードを 変 換 する 機 能 を 持 っています ファイル メニューから 漢 字 / 改 行 コード 指 定 保 存 を 選 択 するとコード 指 定 ウィンドウが 現 れ ここで 文 字 コードの 指 定 ができます ちなみに Windows と Unix の 各 コードは 次 のようになっています Windows 環 境 漢 字 コード:SHIFT-JIS 改 行 コード:CR+LF Unix 環 境 漢 字 コード:EUC 改 行 コード:LF 電 子 メールやホームページを 見 た 際 に 文 字 化 けで 読 めないことがあるのは この 文 字 コードの 認 識 がうまくでき ていないためです ためしに TeraPad を 使 用 して Unix 環 境 の 文 字 コードで 保 存 したファイルを Windows に 標 準 で 付 いている メモ 帳 で 開 いてみて 下 さい 漢 字 やひらがなは 文 字 化 けで 読 むことができないと 思 います -1-8-
1.3 コンパイルと 実 行 それでは C 言 語 を 用 いて 作 成 したソースファイルをコンパイルし 実 行 する 方 法 について 説 明 します (1) Cygwin の 起 動 まず ディスクトップ 上 にある Cygwin のショートカットをダブルクリックして Cygwin を 起 動 して 下 さい なお Cygwin は Windows 環 境 で UNIX のコマンドを 使 用 することができるツールです したがって この 後 に 説 明 するコマンドは Unix 環 境 で 使 用 するコマンドです (2) 作 業 フォルダへの 移 動 1.1 プログラミング 環 境 の 準 備 で 作 成 した 作 業 用 フォルダにソースファイルを 保 存 していると 思 います こ のソースファイルを 保 存 したフォルダに 移 動 します このテキストでは 次 のようにコマンドを 入 力 します cd c ここで cd とはフォルダを 移 動 するという 意 味 で c とは 作 成 した 作 業 用 フォルダの 名 称 です つまり こ の 場 合 のコマンドは c フォルダに 移 動 するということです ls というコマンドを 入 力 して 下 さい このコマンドは フォルダ 内 にあるファイル 等 を 表 示 するコマンドで す 実 行 するとソースファイルが 表 示 されたと 思 います (3)コンパイル プログラミング 言 語 を 用 いて 作 成 したソースファイルを コンピュータ 上 で 実 行 可 能 な 形 式 に 変 換 することをコ ンパイルといい このためのソフトウェアをコンパイラといいます コンパイルするには 次 のコマンドを 入 力 します gcc file.c file.c の 部 分 に 作 成 したファイル 名 称 を 入 れます エラーなくコンパイルが 終 了 すると a.exe という 名 称 の 実 行 ファイルが 作 成 されます (4) 実 行 次 のコマンドを 入 力 するとプログラムが 実 行 します./a.exe あるいは./a なお 実 行 ファイルの 名 称 を 自 由 に 付 けたい 場 合 は 次 のようにコマンドを 入 力 し コンパイルします gcc file.c -o xxx -o が 実 行 ファイルに 名 称 を 付 けるというオプションです o は 小 文 字 のオーです また - は マ イナスとは 呼 ばずに ハイフンと 呼 びます ついでに 覚 えましょう この 場 合 実 行 ファイルの 名 称 は xxx となります -1-9-
(5) Cygwin の 終 了 Cygwin を 終 了 するには 次 のコマンドを 入 力 します exit 補 足 (1)プログラムの 実 行 を 行 ったとき 異 常 な 実 行 となったら( 暴 走 したら) Ctrl+C で 強 制 的 に 実 行 を 終 了 させることが 出 来 ます (2)プログラムを 実 行 した 際 画 面 に 表 示 された 文 字 をファイルとして 保 存 しておく 方 法 を 紹 介 します プログラムの 実 行 ファイル 名 を a.exe とし 画 面 に 出 力 された 表 示 を 保 存 するファイル 名 を hozon.txt と します./a.exe > hozon.txt ここで 拡 張 子 として.txt を 付 けるのは Windows 環 境 では この 拡 張 子 によって ファイルの 種 類 をテキ ストファイルと 認 識 するからです -1-10-