どなたか、現在最もポピュラーなC言語はなにか、教えていただけませんか.
しばらくプログラミングから離れていましたが、このごろまた復帰しました.
昔のC言語で書いたソースを近代化するつもりで、C#に取り組みました.
ところが、これでよかったのかどうか疑問になってきました.
C#よりも、C++にすべきではなかったのでしょうか.
あるいは、なにもC++とか、C#にしなくても、昔のC言語でもWindows上で働くようにできないかと言う疑問です.
そこで、伺います.
現在、プロの世界で実際に実用されているC言語はいったいどれでしょうか?
ボーランドも含めて、教えてください.
よろしくお願いします.
No.9ベストアンサー
- 回答日時:
C++の設計者自身が「C言語との互換性」を非常に重視しているので、
言語仕様としてもC言語との親和性が高く、コンパイラもC/C++コンパチブルなものが主流です。
# 設定ファイルやコンパイルオプション、拡張子(.c/.cpp)等で指定
また、新しい言語の派生が以前の言語を即駆逐するわけでもないので、
C言語も低レイヤの開発ではまだ現役だったりすることもあります。
とはいえ、Windowsに限定すれば、CよりはC++の方が多くなってると思いますが、
既に完成しているならばC言語のままでも十分に使えるはずです。
# 但し、ANSI/ISO/IEC系のCであることは必要。K&R時代のものは、
# 標準Cから外れていることもあるのでこの部分はコンパイラによっては修正が必要です。
そして、もしもC言語のソースを移植するならC++の方が格段に楽です。
きれいにIS準拠で書かれたCソースの大半はC++でも通ります。C#ではこうは行きません。
また、ほぼ全てのCの用途をC++で直接代用することは可能ですが(CでできることはC++でもできる)、
C#では必ずしも可能とは限りません(C#固有の利点と欠点がCとは違うので)
C#は、名前にCを含むもののどちらかというとCよりはJava等の仲間というか。
MS⇔Sunの裁判でMSがJavaから手を引いた後に出してきたのが.NET、
ひいてはC#なので、「MS色全開のJava」といった方が近い気がします。
MrBanさん
今度もご親切な説明を頂いて、有難うございました.
お蔭様で、なにも知らなかった私にも、C++から、C#の本質とか、その出現の経緯などがようやくわかってきました.
ずっと昔のことですが、PDP-7のB言語から PDP-11のC言語へ発展したころは、私もまだ現役でしたので、折に触れてその間の消息なども聞くことが出来ました. しかし、「サンデー毎日」の現在では、今度いろいろ教えていただくまでは本当になにも知りませんでした. 心から、皆さんにお礼を言いたい気持ちです.
ところで、C#と言うのは、「MS色全開のJAVA」と言うご説明は、言い当てて妙と存じます. 全く同感です.
明日から、雑用でしばらく手がはずせません. そんなわけで、とりあえずお礼を申し上げておきます.
.
No.11
- 回答日時:
>ただ、.NETが世に出てきたころ、「OSの種類に関わらず動作可能な
>プラットフォーム」とよく聞きました.
Basic、C、Java、ブラウザ等、MSが発売する各種言語及び
アプリケーションは、例えそれが以前から有り一般的な物
であってもWindows上でしか動かない様に独自の機能拡張を
行ってユーザーの囲い込みを行ってきました。
その他、他のソフトメーカー等の参入を阻害している行為を
行っていると判定され独占禁止法違反に問われる事を避ける
建前の為に「C#は仕様が公開されているオープンな言語」と
いう事にしているようです。
ご教示、有難うございました.
メーカーとしては、その本音は別として、一応の筋は通っているとも言えるわけですね.
無知をさらけ出すようですが、独占禁止法と言う法律は経済界の法律で、我々には縁遠い代物と思っていました.
お蔭様で勉強になりました. お礼を申し上げます.
No.10
- 回答日時:
既に回答が出ているように、CとC#は全く別物です。
確かに名前に「C」が含まれますが、それをいうなら「C」obolもbasi「C」も「C」を含みます。それぞれがCとどの程度類似しているかは、名前の類似性にほぼ比例します。冗談はさておき、最もポピュラーなCコンパイラということであれば、おそらくGCCだと思います。(C++ではなく)Cがよく使われる分野として、組み込み分野とか数値計算分野などがありますが、大多数の分野にわたって使われるのがGCCです。ただし、GCCでもターゲットが異なれば別物と見なすのであれば、これといって有力なものは思い当たりません。
jactaさん
ご教示、有難うございました. この世界について何もわかっていない人間が、一番手近なコンパイラに手を出して、これでいいのか、悪いのかと、迷っていたと言うのが実情でした.
皆さんのおかげで、どうやら進む道が見えてきました.
深くお礼を申し上げます.
No.8
- 回答日時:
参考までに、GNU Cコンパイラというのもあります。
Windows上でとのことですのでCygwinかMinGWをインストールすると利用できます。
GUIライブラリになりますがGTK1.x系はCでオブジェクト指向な感じになってます(この点はある意味近代化。)。GTKのプログラムソースはかなり参考になると思います。
参考URL:http://gcc.gnu.org/
有難うございました. さっそく GNU Compiler Collectionを参照してみました.
こんなサイトがあるとは、全く知りませんでした. 皆さんのお蔭様で、いろんなことがわかってきました. 感激です.
No.7
- 回答日時:
GUI以外はそれなりに動くらしいですが…>mono
とはいえ、仕事じゃまだまだ怖くて使えない。
No.5
- 回答日時:
C#の言語仕様自体は、ISO/IEC標準に一応なったのですけどね…。
現実的にはMSの.NET上以外では動かない現状があるので…>C#
とはいえ、.NET用言語としてMSが力を入れてるのはC#だと思うので、
MSと心中する前提なら悪くないのかも。
積極的に覚えたいかどうかは別にして、JavaとかC++とか知ってるプロなら
C#使うのはさして難しくないと思うので、構えることもないというか。
(個人的には、言語としては嫌いではないがMS依存なので「使えない」)
現行の主要なC++コンパイラは、大抵C言語のコンパイラとしても動きますよ。
# C専用でC++未対応なら知ってますが、逆にC未対応のC++専用コンパイラってあるのだろうか。
ご説明、よくわかりました. お礼を申しあげます.
ご説明のうちで、
>現行の主要なC++コンパイラは、大抵C言語のコンパイラとしても動きますよ。
無知をさらけ出して恥ずかしいのですが、C++コンパイラが旧C言語のコンパイラとしても動くことを全く知りませんでした.
旧C言語時代に作りためたソースを、10年の空白を経て、もう一度生き返らせたいというのが私の願いでした. そこで、C++を飛び越して、C#のコンパイラを手に入れました.
C++コンパイラで、従来のソースを読んでくれることを知っていたら、こんな無駄な手間は要りませんでした. 早速、C++のコンパイラを入手します.
重ねて、お礼を申し上げます.
No.4
- 回答日時:
>プロの世界で実際に実用されているC言語
プロといっても色々あると思いますが
Windowsやコンソール(PS等)のゲームに関してはC/C++です。
理由は開発環境としてC/C++以外に現実的な選択肢がないからです。
(私自身ゲームメーカーの人間なのでそれ以外はわかりません。)
コンパイラとしてはC++ですが
CかC++かはスタイルの問題です。
ちなみにコンソールの場合はいまだにCが使われているところが多いです。
他にも有名なライブラリ、例えばzlibやlibpngもCですね。
>2.Windows(XP or Vista)上で動くC言語コンパイラは入手可能でしょうか?
無料のものならVisual C++ 2005 Express Editionがあります。
http://www.microsoft.com/japan/msdn/vstudio
>ボーランドも含めて、教えてください.
私の知る限りWindowsのゲームでVisualC++以外を使う事はありません。
(最新のDirectXを使う上でVisualC++の親和性が高い為)
あとゲーム開発では統合環境として「コードウォーリアー」が有名です。
http://www.metrowerks.com
sha-girlさん
ご親切なご教示、お礼を申し上げます.
お蔭様で、ゲーム・メーキングに関しては、CかC++が主力であり、C#は使われていないことがわかりました.
本当に有難うございました.
No.3
- 回答日時:
> プロのベテランの方たちは、どれに比重をかけていらっしゃるだろうか
ほんまもんのプログラマならどれであろうが
処理系とマニュアルさえあれば
もののひと月もあればそこそこ使えるようになるだろから
将来どっちに転んでも怖くはないんじゃないかしら。
# それがプロってもんでしょ。
恐れ入りました. たった一ヶ月で慣熟できるとは、さすが、プロの面目が躍如と言うところです.
たった一つのテーマを解決するのに、数年もかっかったようなボンクラ頭の持ち主としては、「敬服」の一語あるのみです.
ちなみに、そのテーマとは、電子工学の回路網の解析でした.
ただ、私の意図したところは、それを理解できるか否かではなく、現在において、もっともポピュラーな言語はどれかということでした.
No.2
- 回答日時:
>なぜかC#は影が薄い
MS限定だから。ひいてはwindows限定だから。
マルチプラットフォーム環境(主にweb)が浸透しつつあるこのご時世に環境強依存開発言語。
>Windows(XP or Vista)上で動くC言語コンパイラ
http://www.google.co.jp/search?q=windows%20c%E3% …
有難うございました.
お蔭様で、C#が伸びない理由がわかりました.
ただ、.NETが世に出てきたころ、「OSの種類に関わらず動作可能なプラットフォーム」とよく聞きました.
ただのプロパガンダに過ぎなかったのですね. それとも、このC#を企画、設計した人たちの、実現できなかった夢に過ぎなかったかもしれませんね.
重ねて、お礼を申し上げます.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- その他(プログラミング・Web制作) プログラミングについて(Python) 添付した画像はC言語で簡単に作ったソースで、1つの配列に5つ 3 2022/09/10 19:15
- C言語・C++・C# プログラミング言語「C#」の難易度ってどれくらいですか? 4 2022/05/12 19:15
- その他(言語学・言語) 外国語問題 1 2022/07/21 15:21
- その他(言語学・言語) ピダハン語 2 2022/07/14 12:41
- C言語・C++・C# visual studio 2019 についての質問です 1 2022/09/21 09:58
- C言語・C++・C# exeファイルが作れない(windows10) 6 2022/08/13 08:47
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- C言語・C++・C# gettimeofday() と localtime_r() を使って現在の日時をマイクロ秒単位で表 2 2022/10/26 21:15
- C言語・C++・C# C言語の質問です HTMLでこのようなコードを書いたのですがそれをC言語で同じように書きたいです < 1 2022/08/11 23:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
unsigned long long 型のフォー...
-
ソフトの開発言語を調べる方法
-
printfなど、標準関数のソース...
-
昔のgraph.hというファイル
-
C++でデスクトップGUIアプリ開...
-
COBOLのALPHABET...
-
C言語のフリーソフト。
-
main() 関数は、int を返値とす...
-
組み込みソフト。ROM領域にデータ
-
サイクルカウントの方法
-
組込みC開発
-
リリースモードとデバッグモー...
-
オープン系とか、組込み系とか...
-
COBOL計算式の中間ワーク桁数に...
-
Type name expected エラーがで...
-
プログラミングって右脳よりの...
-
ALGOL・PL/Iのフリーのコンパイ...
-
cc と gcc の違い
-
C言語 main関数とsum関数の記...
-
C++Builder → Visual C++ 移植...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
unsigned long long 型のフォー...
-
ソフトの開発言語を調べる方法
-
C++でデスクトップGUIアプリ開...
-
printfなど、標準関数のソース...
-
組み込みソフト。ROM領域にデータ
-
リリースモードとデバッグモー...
-
変数の内容がコロコロ変わる、...
-
cc と gcc の違い
-
COBOLの論理演算子について質問...
-
Visual Studio でmakefileを使...
-
PICでのI2C通信でのマスタ、ス...
-
COBOLのALPHABET...
-
<conio.h>?
-
VB6のコンパイラ
-
COBOL計算式の中間ワーク桁数に...
-
パーサとコンパイラの違いって?
-
関数形式マクロ dtaは戻り値が...
-
プログラミングって右脳よりの...
-
C++Builder → Visual C++ 移植...
-
24bit サイズの変数
おすすめ情報