プログラムの作成/実行の手順 (コンパイル言語の場合) 起草 [頭] : プログラムの仕様/設計 (アイディア) 「どんな(仕様)」プログラムを「どのような手法(設計)」で作成するか 「プログラムを実行したら『どうなる』か ?」を「 *予め* 考え」ておく 事例 : 画面に、「Hello, World[改行]」と出力するプログラムを作成する 結果 : プログラムを実行すると、画面に「Hello, World[改行]」が表示される 編集 [エディタ] : ソース(Soruce) プログラムの作成 (*.c) 自分が望むプログラムをプログラミング言語(C 言語)で表現する 事例 : サクラエディタを利用して、「目的の事を行うプログラム」を入力 => 形式としては、「C 言語」の形式で行う ファイルとして、名前をつけて保存 拡張子 .c 日本語コードは utf-8 *.c : ソースコードファイル 翻訳(コンパイル) [コンパイラ] : オブジェクト(Object) プログラムの作成 (*.o) ソースを翻訳して、オブジェクトを作成する ソースコードファイルから、オブジェクトファイルを作成する 事例 : hello.c => hello.o ソースコード : (相対的に..) 人間にわかりやすい表現のプログラム オブジェクトコード : 計算機に理解可能なプログラム cc コマンドを利用行う 「表現」に問題があれば、ここで確認(エラーになる)でき、最初に戻って検討する オブジェクトコードには、「やりたいこと」はすべて記述されている <= 「やりたいこと」をするための「環境」に関する情報はかかれていない 「やりたいこと」+「環境を操作するための情報」を結合する必要 リンク [リンカ] : 実行ファイルの作成 (*.exe) オブジェクトとライブラリを結合して実行ファイル(アプリファイル)を作成する 事例 : hello.o => hello.exe 操作 : cc -o を利用する 「部品の揃え方」に問題があれば、ここで確認でき、最初に戻って検討する 実行 : 実行結果の確認 (実行結果:画面出力など) 事例 : hello.exe を実行して、目的が達成されているかどうかを確認する 操作 : ./hello.exe プログラムを実行し、その結果を見る事 適切な結果が得られなければ、最初に戻って検討する 確認実習 「Hello World」プログラムを作成、実行してみよう == 代入 復習 関数の作り方 命令の一部を切り出して、名前を付けるができる => 関数定義 名前で、その名付けた命令を呼び出す事が可能 => 関数呼び出し 代入の機能は、制限された(安全な形で..)引数付き関数の利用で、代行できる 代入は時間の概念がはいり、複雑 初期化問題(宣言と最初の代入の間に、変数が参照される危険性)がある => ともに決定 <= 利点 : 変数の値を決める自由とその影響範囲を大きくするという強力さがあり、 => 効率を高める事ができる