[WebP Vol.013] Cプログラミング ~セットアップ編~

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
【 Webプログラミング Code Sample 】                          Since2001/11/23

                  Code013: Cプログラミング  〜セットアップ編〜

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                                                    Produced by ichikoro.com

           ▼毎週月曜日配信です。
           ▼等幅フォントでご覧いただくとキレイに見えます。
           ▼登録・解除はこちらから可能です。
               < http://www.ichikoro.com/webp/ >
                  ※バックナンバーへのリンクもあります。
                  ※お友達にもぜひお勧めください(^^)/


                            ■ お詫び ■
          すみません、引越しなどなど個人的な用事で発行が
          遅れてしまいました。申し訳ございません。

─【Contents】───────────────────────────────
    01.  ................... さぁ、C言語をはじめよう!
    02.  ................... パソコンの中身
    03.  ................... OSの種類
    04.  ................... DOSを使ってみよう
    05.  ................... DOSを使ってみよう:その2
    06.  ................... C言語とは?
    07.  ................... コンパイラをセットアップしよう!Windows編
    08.  ................... コンパイラをセットアップしよう!Mac編
    09.  ................... コンパイラをセットアップしよう!UNIX編



━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  01.  「さぁ、C言語をはじめよう!」
──────────────────────────────────────

先週お伝えしたとおり、今回からはC言語入門となります。そこで今回は事前に知っ
ておいた方が良い知識と、必要なソフトウェアのインストール手順について解説した
いと思います。

う〜ん、どこから話そうか悩みますね(^^;


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  02.  「パソコンの中身」
──────────────────────────────────────

パソコンと呼ばれるものは、大きく分けて下記の物で構成されています。

    ・ディスプレイ、プリンタなどの出力機器
    ・キーボード、マウスなどの入力機器
    ・パソコン本体

さらに、パソコン本体の中身は

    ・CPU
        実際の演算をします。

    ・メモリ
        CPUの演算に必要な情報などを記録します。
        ハードディスクと違い、電源を落とすと記録されている情報は消えてなく
        なります。CPUはメモリ上にある情報にしかアクセスできません。

    ・ハードディスク
        電源を消した後も残しておきたい情報や、メモリ上に一度に載せきれない
        情報を記録しておく媒体です。メモリに比べ仕組み上、どうしてもハード
        ディスクは速度的に遅いとされています。


厳密にいうと嘘ついてるんですが、だいたいこんなイメージです。
詳しく知りたい方は別途書籍などでお調べください。

    ・プログラムはなぜ動くのか
     矢沢 久雄(著) / \2400 / 日経BP出版センター / ISBN 4822281019
      &http://www.amazon.co.jp/exec/obidos/ASIN/4822281019/stagefan-22
        ※予備知識がないと挫折するかもしれません(^^;
         ある程度プログラムを理解してから購入するのがオススメ


みなさんがEXCELやPhotoShopなどをインストールする先は、通常ハードディスクで
す。ではダブルクリックして実行した時内部ではどんな動作をしているのでしょう
か?フリーズするとなぜ作業内容が消えてしまうのでしょうか?WORDのファイルが
他のアプリケーションで開けないのはなぜでしょうか?

そんな疑問が、Cを学ぶことで解消されると思います。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  03.  「OSの種類」
──────────────────────────────────────

みなさんが普段使っているパソコン、これに搭載されているOSは大きく分けて

    ・GUI(ぐい)
        グラフィカルユーザーインターフェースの略称

    ・CUI(くい)
        キャラクターユーザーインターフェースの略称

の二つです。ユーザーインターフェースとは、“使い勝手”のことです。
この二つ、何が違いのでしょうか。


WindowsやMacはマウスなどを使い、フォルダやファイルなどの“アイコン”を操作し
ます。例えば間違った操作をした場合は、“ウィンドウ”が開かれ注意を促してくれ
ます。こうしたグラフィカル(視覚的)な操作方法(使い勝手)で、ファイルを管理した
りアプリケーションを使用するOSが、GUIに当たります。

・WindowsはGUIですね
では、CUIとはどういうOSなのでしょうか? Windows95が爆発的にHITする以前はMS-DOSと呼ばれるOSが主流でした。筆者が生まれ て初めて触ったOSでもあります。このMS-DOSは、特別なソフトを使わない限りは、上 で上げた全ての操作を文字で行います。ファイルのコピーや削除、アプリケーション を立ち上げるのもすべて文字です。これがCUIなのです。“キャラクター”とは通常 “文字”のことを指します。
・こんな感じです
他にもUNIXと呼ばれるOSはCUIです。XWindowと呼ばれるシステムを導入するとGUIと しても使用できます。MacintoshもXからUNIXがベースとなった関係で、CUIが使えた りします。 ちなみに、CUIの方が劣っているというわけではなく、使い方によってはCUIの方が 優れている場合もあります。 ※例えば、Windowsでは特別なソフトを用意しないと一度に拡張子のリネーム  ができませんが、DOSでは下記のようなコマンドで一撃です。 REN *.csv *.txt ※CSVをTXTに変換 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 04. 「DOSを使ってみよう」 ────────────────────────────────────── Windowsを使っていらっしゃらる方が対象となりますが、ためしにDOSを疑似体験して みましょう。余談になりますがWindows95はほとんどDOSの上で動いていたようなもの でした。それが98でようやく袂を分けることになったのです。XPにおいて、NTと一本 化...というよりはNTになっちゃったようですが(^^; ※出来損ないできしたからね<WindowsXX ※とはいえ、下位互換性を考慮してか未だに(XPでも)DOSが使えるようになって  います。 さぁ、それではスタートメニューから 「MS-DOSプロンプト」 を探してください。Meでは スタート → アクセサリ の中にあります。98の場合は、 スタート → プログラム の中にあるようです。
・WindowsMeの例です(Clickすると大きくなります)
実行するとまず
・実行例
C:\WINDOWS>

という感じになっているでしょうか? ためしに DIR と入力し、リターンキーを押してください。 ずらずら〜とファイル名やフォルダ名が表示されると思います。DIRとはまさにファ イルの一覧を表示するコマンドです。今自分のいるフォルダのファイルやフォルダを すべて表示してくれるのです。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 05. 「DOSを使ってみよう:その2」 ────────────────────────────────────── では、 CD デスクトップ ※実際には半角カナで“デスクトップ”と入力 と入力すると、今度は C:\WINDOWS\デスクトップ> となったと思います。ためしにDIRを実行してください。今度はデスクトップ上にあ る全てのファイルやフォルダを表示できたと思います。そう、CDは自分いる場所を 変更してくれるコマンドです。 今度はアプリケーションを起動してみます。 notepad と入力してみてください。 すると.....。 初めて触られた方もいらっしゃると思いますが、どうでしょうか、面白いですよね? マトリックスの主人公にでもなったような気分じゃないでしょうか?(笑) 今度はフォルダを作ってみましょう。 MD Directory と入力すると、デスクトップに“Directory”があらわれましたか? というような感じで、他にも色々なコマンドが用意されています。 ファイルをコピー、削除したり、名前の変更をしたりと様々です。 ここまででは、あまり便利さを感じられないかもしれませんが、 追求していけば行くほどその便利さに感動します(特にUNIX!)。 これから紹介するソフトを使用するには、これらの知識は必要不可欠です。 ぜひマスターしておいてください。 ・MS-DOS関連の書籍(amazon) http://www.amazon.co.jp/exec/obidos/external-search?tag=stagefan-22&keyword=MS-DOS ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 06. 「C言語とは?」 ────────────────────────────────────── 通常、C言語では実行可能なアプリケーション、例えばPhotoShopとかExcelなどのよう に、ダブルクリックで起動し、実行することの出来るものを作成することが可能です。 プレイステーションなどもC言語で作成されていますし、もちろんCGIも作れます。 Java(JavaScriptではなく)や、PerlなどもC言語を参考に設計されていますので、 C言語を覚えれば、他の言語も比較的覚えやすいと思われます。  ※が、良いことばかりではありません。C言語はPerlやBASICと比べると、   かなり厳格です。また下手をすると大変危険な動作をすることもあり   ます。 理屈をダラダラ話すより、実際にやった方が早いですね(^^; ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 07. 「コンパイラをセットアップしよう!Windows編」 ────────────────────────────────────── この項(07)は、Windows95/98/Meをお使いの方向けの情報です。 では下記のページから、「コンパイラ」と呼ばれるソフトをインストールしてくだ さい。 ・Borland C++ Compiler 5.5 無償ダウンロードサービス  http://www.borland.co.jp/cppbuilder/freecompiler/ まずは、上記ページから (1)Borland C++ Compiler 5.5 のダウンロード ↓ (2)Borland Mail News Membersに登録する ※Borlandから無料のメルマがが届くようになります。  登録してあげてください。 ↓ (3)Step 2 : Borland C++ Compiler 5.5 のご使用条件 ※ちょっと難しく書いてありますが、必ず目を通してください。  納得したら下へ ↓ (4)「同意する」 ※本当に読みましたか?(^^; ↓ (5)「FTP」 ※ダウンロードが始まります。 という手順をたどってください。 その後、ダウンロードしたファイル“freecommandlinetools2.exe”を ダブルクリックすると、インストールがスタートします。 「同意する」→「完了」という手順でOKです。 通常、Cドライブの下に C:\borland\bcc55 という感じでインストールされます。が、これで完了ではありません。 この後は、bcc55下にあるreadme.txtにしたがってインストールを続行します。 (1)autoexec.batの加工 まず、Cドライブの直下にあるautoexec.batというファイルをメモ帳などで 開きます。その中に SET PATH=%PATH%;C:\borland\bcc55\Bin という一行を追加し、保存します。 (2)bcc32.cfgファイルの作成 次にbcc32.cfgという名前で、 -I"c:\borland\bcc55\include" -L"c:\borland\bcc55\lib" とだけ書かれた、ファイルを用意します。 メモ帳などで作成すればOKです。 (3)ilink32.cfgファイルの作成 次にilink32.cfgという名前で、 -L"c:\borland\bcc55\lib" とだけ書かれた、ファイルを用意します。 同じくメモ帳などで作成すればOKです。 (4)Bin下に移動する bcc32.cfgとilink32.cfgを、下記に移動します。 C:\borland\bcc55\Bin (5)再起動 autoexec.batを有効にするため、念のため再起動します。 ここまでで準備は整いました。 では、キチンとインストールできたか確認してみましょう。 まず、“hello.c”というファイル名で中身が下記のファイル を用意してください。(2002/02/08 バックナンバーの引数を変更) #include<stdio.h> int main(void) { printf("Hello! World\n"); return(0); } MS-DOSプロンプト(以降DOS窓)を開き、上記のファイルがある場所に移動(CD) します。 C:\WINDOWS> CD デスクトップ その後、 C:\WINDOWS\デスクトップ>bcc32 hello.c と入力しリターンキーを押してください。 すると C:\WINDOWS\デスクトップ>bcc32 hello.c Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland hello.c: Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland C:\WINDOWS\デスクトップ> となるハズです。 上記の例だと、デスクトップ上に下記のファイルが作成されます。 ・hello.c ・hello.obj ・hello.tds ・hello.exe hello.exeが実行可能ファイルです。 ダブルクリックでも実行できますが一瞬で消えてしまいますので、 DOS窓から C:\WINDOWS\デスクトップ>hello Hello! World C:\WINDOWS\デスクトップ> となれば成功です。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 08. 「コンパイラをセットアップしよう!Mac編」 ────────────────────────────────────── この項(08)は、Macをお使いの方向けの情報です MacのCコンパイラとして有名なのは ・CodeWarrior  http://www.metrowerks.co.jp/ でしょうか。JavaやC++の開発にも使えます。 筆者はWindows版を使っています。ただ、学習用の一番安い物でも\28,000しますの で、気軽にやろうかなぁという方にはちょっとつらいかもしれません。 ・CodeWarrior Learning Edition for MacOS  http://www.metrowerks.co.jp/Products/Desktop/LE_Mac2.htm しかし、MacOSXにはコンパイラが付属しているとのことですので、 こちらをお使いになられるのがお勧めです。 ※この情報についてあまり詳しくありません(^^; ・Appleデベロッパ  http://developer.apple.com/ja/ 他にも、書籍の付録にCodeWarriorの無償版がついていることもあります。  ・MacintoshではじめるCプログラミング—CodeWarrior Lite for C 評価版   デーブ マーク(著) / \4800 / エスアイビー・アクセス / ISBN: 4434011170   http://www.amazon.co.jp/exec/obidos/ASIN/4434011170/stagefan-22 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 09. 「コンパイラをセットアップしよう!UNIX編」 ────────────────────────────────────── ccかgccを使いましょう(^^; ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 編 集 後 記 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ さてさて、C言語入門編が始まったわけですが、本格的にスタートするのは 来週からになります。バッチシ下準備をし、来週に備えてくださいませ。 次回は、基本的なソースの書き方と意味、変数を取り上げたいと思います。 いやはや、先週の土日は予想以上に大忙しで、原稿を書く時間がまったくあり ませんでした。気がついたら布団の上で死んだように眠っていました。 雪の降る土曜日に家財道具とともに新居に移動。次の日の日曜日にこれまで住んでい たアパートを、大家さんに引き渡しました。明渡すのが午後だったため、午前中は ずっと、掃除をしていました。ピカピカになるにつれ、初めて訪れた日を思い出し、 ちょっと寂しいやら懐かしいやら、複雑な気持ちになりました。 あいにく雨が降っており、ちょっとブルーな感じでしたが、大家さんと一頻り敷金の 相談と「ありがとうございました」の挨拶が終わり外に出ると、すでに雨が止んでお り、真っ青な空が現れました。いや、ほんと新しいスタートを祝福してくれているよ うで、久しぶりにジンときました。 生きてるってすばらしい、なんて気分でした(^-^) ではでは、また来週お会いしましょう! (^-^)/~~ ---------------------------------------------------------------------------- ★コラム募集のお知らせ ---------------------------------------------------------------------------- Webプログラミングでは、寄稿していただけるコラムやプログラムなどを募集して います。最近疑問に思っていることや、めっこりと作ったプログラムやシステムに ついて語っていただいたりと、テーマは基本的に自由です。たくさんの読者の方に あなたをアピールする場にもなります。ぜひ有意義な情報やご意見をお送りくださ い。 Subjectに「コラムへ寄稿」などと付け、最後に簡単な自己紹介をお願いいたしま す。ご応募は下記のメールアドレスにお送りください。 mm-webp@ichikoro.com ※必ず、著作権をもたれた方、ご本人がご応募ください。 ※著作権が、Webプログラミングにわたる物ではありません。 ※編集の都合上、加筆・修正や変更のお願いをすることなども ございます。またご応募いただきましてもご遠慮いただく場 合もございます。あしからずご了承くださいませ。 ---------------------------------------------------------------------------- ★相互広告募集のお知らせ ---------------------------------------------------------------------------- Webプログラミングでは、読者数を増やしたいメルマガ発行者さんを募集していま す。お互いに一定期間(1〜3回程度)広告を掲載しませんか? 詳しいことは、Subjectに「相互広告」などと付け、下記のメールアドレスにお送 りください。 mm-webp@ichikoro.com ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 【 Webプログラミング Code Sample 】 発 行 : ichikoro.com 発行責任者 : 勝部 麻季人 < katsube@ichikoro.com > 発行部数 : 1512部(前回) Webサイト : < http://www.ichikoro.com/webp/ > お問い合わせ先 : < mm-webp@ichikoro.com > Powerd by まぐまぐ All Right Reserved, CopyRight(C) 2001 Webプログラミング Code Sample ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■