• ベストアンサー

GCCについて

はっきりいってGCCのことが全く分かりません。 質問は次の3つです。 1.GCCはWindows上で動くのですか。 2.GCCはどのようにして入手できるのでしょうか。 3.GCCを使う意義はなんですか。 ご回答よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kokucho81
  • ベストアンサー率61% (157/255)
回答No.1

GCCって、GNU C++ のGCCコマンドということでよろしいのでしょうか? であれば、 1.もちろん、動きます。 2.GCCはGCCではなく、「CYGWIN」というUNIX(のBASH系シェル)を仮想した   コマンドラインツールのセットとしてはいっています。   GCCのみならず、Perl、その他のものが結構一度に入手できます。 Cygwinはここから入手してください。 http://sources.redhat.com/cygwin/ なお、ダウンロードする際に、いろいろなディレクトリがあって、迷いますが、 最新バーションのもののうち、「latest/」というディレクトリの中を全て 入手します。(かなり大きなメガ数となります。) 3.GCCを使う意義はなんですか。  ないです。Windows上で、Windowsのためのプログラムを作る場合、  GCCを使うのは「愚の骨頂」です。ファイルサイズは大きくなるし、  スピードも遅くなりますし、GCCには、配列に配列を代入すると、  配列の中身がちゃんとコピーされてしまうなど、普通のC++の文法では  許されないことが許されてしまっているため、汎用性においても疑問  視せざるを得ないです。  GCCを使うのは、あくまでもUNIX系か、それに近い環境で動かすための  プログラムを組む場合にのみ有効です。

KanjistX
質問者

お礼

詳しいお話ありがとうございました。 接続時間に余裕のあるときに試しにCygwinダウンロードしてみたいと思います。

その他の回答 (3)

  • NINJA104
  • ベストアンサー率43% (133/306)
回答No.4

1.動きます 2.参考URLを参照してみてください。 3.gccで記述する限り、プラットフォーム(OS)依存を極力減らす事が出来ます。 ただし、他の方のアドバイスにも有る様にWindows上で利用するメリットは低いかもしれません。特にWindows専用アプリケーションを記述する場合。

参考URL:
http://www.ab.wakwak.com/~tino/windows/
KanjistX
質問者

お礼

まあ、今のところOS依存にこだわるほどのことやっていないので、 必要性は?ですね。 どうもご回答ありがとうございました。

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.3

3.についてだけ。 No.1の解答者の方は、過去に痛い目にあったことがあるのでしょうかね。 確かに、gcc は固有の拡張をしているので、ANSI C としてみた場合には 互換性に疑問があります。 そのかわり、対応しているプラットフォーム(OSと思ってもらって良いです)が 多いですから、gcc を使っている限り、互換性があると言えます。 また、gcc の最適化は(ある意味、無茶といえるほど)こったことをやって くれることがあります。なので、一概に「遅い」とは言えません。 ものには得意分野がありますから、Windowsだけで動けば良くて、Windows 特有のウィンドウを持つプログラムを作るケースにおいては、Windows の コンパイラ(VCやBC)に軍配が上がるでしょうが、unix なども視野の中に いれるのであれば、知っておいて損はないです。 ただ、gcc固有の拡張機能は、使わない方が無難かと思います。

KanjistX
質問者

お礼

仰るとおり、まずはCからはじめます。 一応、BCCがあるのでC++をマスターしたいと思います。 丁寧なご回答ありがとうございました。

  • akino4
  • ベストアンサー率18% (35/185)
回答No.2

3について あと、マイコンの開発なんかは最近はGCCが圧倒的に多いですね なんてったって、ただだし・・・・

KanjistX
質問者

お礼

ただ……。 これ以外に求めるものはありません。 別に僕はマイコンの開発などといった分野に手を出すような玄人じゃないので。 ひまなときに手を出してみます。

専門家に質問してみよう