C言語関係掲示板

過去ログ

No.1100 コンパイラの違い

[戻る] [ホームページ]
No.14494

コンパイラについて
投稿者---元脱走兵(2004/06/06 13:22:06)


はじめまして。C言語の初心者です。あまりにも初歩的な質問
で申し訳ないです。C言語のコンパイラでCygwinを使って
いるのですが、どのコンパイラで同じなんでしょうか?
C言語のコンパイラはVsual C++やBorlan C/C++とかgccとか
あるのですが、やっぱり違うものなのでしょうか?
ちなみCygwinはgccだと思います。

JavaからC言語を始めて戸惑っていて、大変失礼な質問で
申し訳ありません。

それと少しC言語をしていて思うこと、文字列の出力とかはJavaと比べて
面倒くさいですね。


No.14495

Re:コンパイラについて
投稿者---たか(2004/06/06 13:45:46)


>はじめまして。C言語の初心者です。あまりにも初歩的な質問
>で申し訳ないです。C言語のコンパイラでCygwinを使って
>いるのですが、どのコンパイラで同じなんでしょうか?
>C言語のコンパイラはVsual C++やBorlan C/C++とかgccとか
>あるのですが、やっぱり違うものなのでしょうか?
>ちなみCygwinはgccだと思います。

Visual C++やBorland C++ BuilderはGUI開発に向いています。フリーの
Borland C++は事情はgccと似ていると思います。gccは日本語のコードの
扱いに問題がある場合があります(文字列リテラル)。

wchar_tについてはまともに動く処理系がなかなか少ないですね。VC++7.1
はかなりの程度まで対応しているようです。

それ以外は似たようなものだと思います。大きな違いは標準C++に対する
準拠度で、Borland C++は標準C++で通らないコードが結構あります。でも
C言語の学習には問題ないでしょう。

>それと少しC言語をしていて思うこと、文字列の出力とかはJavaと比べて
>面倒くさいですね。

Javaは文字列用のユーティリティが充実しているので、それに比べると
C言語は文字列という概念そのものがないので厄介な物に思えてしまうと
思います。C++なら文字列クラス(std::string)があり、標準入出力スト
リームも大きく拡充され、boostに代表されるテンプレートクラスもあり、
かなり楽になっています。

大元のC言語が開発された年代を考えればこれは仕方ない事かもしれませ
ん。FORTRANのようなパンチカードやテープがまだ普通に使われていたの
ですから。しかしそれでもFORTRANよりはC言語の方がずっと自由な入出力
が出来ると言われていたそうです。


No.14498

Re:コンパイラについて
投稿者---元脱走兵(2004/06/06 14:45:28)


すいません。ありがとうございます。
Cygwinのgccは日本語の文字列は出力されるのですが、エラーが英語な
ので何かいてあるかわかりませんね。
Borland C/C++をいれてみても良いと思っています。




No.14507

Re:コンパイラについて
投稿者---RAPT(2004/06/06 23:58:59)


エラーメッセージが英語だって、大体分かるでしょう?
Javaも最新の文献は英語では?
# ぃゃ最近は何かでているのかな?
# 少なくとも去年まではあまりイケてる日本語の書籍等はなかったけど。

ま、英語より日本語のほうが楽だという気持ちはわかりますが、
必ずしもそれを決め手にすると苦労する事もあるということで。

ま、勉強用にはいいかもね。σ(^^)はVC++使っています。