• ベストアンサー

CとC++

C++を勉強しているのですが たまにC言語から勉強した方がいいと 聞くのですが どちらを先に勉強したら良いのでしょうか?

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

  • ベストアンサー
  • macotosan
  • ベストアンサー率23% (59/247)
回答No.1

 30代の男です。 C++はC言語にオブジェクト指向と取り入れて開発できる 言語です(厳密に言えばC言語でも可能ですが…) したがって基本はC言語で学ぶ方がよい気がします。  それはなぜなのか。 オブジェクト指向というのはそれまで開発手法とは 全く違ったアプローチの開発手法なのですが、これを C++の本では一冊の本でごっちゃに語ることが多いのです。したがって余計な悩みと誤解を招くことが多いです。  C++を本当に学ぶのと、オブジェクト指向を学ぶのと 両方を勉強することをお勧めします。私はC++を学ぶのにてこずりましたが、その主たる原因は物事の本質を (この場合C++と言う言語を学ぶこと、オブジェクト指向という開発手法を学ぶこと)分けている書籍が少なかったからです。  反対に、オブジェクト指向をわかっているなら話は 簡単で、C++から勉強すれば問題はありません。 C言語から勉強したほうがいいという人がいるのは この部分を分けるべきと思うからでしょう。 また、C言語は書籍も多く、基本であるため、それを踏まえた上でC++を勉強すべきと考えているのだと思います。  時間がとれず、また、飲み込みが早いならC++を勉強しするのに、オブジェクト指向も同時に勉強するほうがいいです。C言語から学ばなくても、最近の書籍では前半でC言語的なことを 解説し、中盤からC++の独特な組み方(オブジェクト指向に触れる)を解説している本がありますので大丈夫だと思います。  ただ、悩むことも多いと思いますが…

tamachan546
質問者

お礼

回答ありがとうございます どういう風にC++を勉強するか よく考えて勉強したいと思います

その他の回答 (4)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.5

> クラスを大体分かってるぐらいです それであれば、C++を一通り勉強してから、必要に応じてCを勉強すればよいと思います。

  • Rossana
  • ベストアンサー率33% (131/394)
回答No.4

私はC++の本を先に読み,そのあとCの本を読みました。どっちでもいいと思いますが,両方同時進行で読んでくといいと思います。両者の違いを意識しながら読むと逆に理解しやすくなるのではないかと思います。

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.3

C++の勉強はどの辺りまで進んでいますか?

tamachan546
質問者

補足

クラスを大体分かってるぐらいです

  • mura333
  • ベストアンサー率42% (3/7)
回答No.2

2つのケースがあります。 もし、ポインタ等のC/C++言語特有のアセンブラに違い部分を勉強したいのならば、C言語からの方が余計な部分がないので良いと思います。もしくは、アセンブラも少しかじったほうがいいです。 他方、継承等のC++言語固有のオブジェクト指向を勉強したいのならば、(私個人的には)一度Javaを覚えたほうがいいような気がします。これはC++が複雑すぎて挫折してしまう(もしくは覚えるのに時間がかかる)からです。 もちろんどのくらい急いでいるか等もありますが、私自身がクラス設計とかができるようになったのは、C++の後にJavaをやってからです。C++の時は他人のクラスを使うくらいしかできなかったような気がします(C++文法を覚えればクラスは作れますが、設計思想がむちゃくちゃでした)。 参考になれば幸いです。

関連するQ&A

  • C/C++をはじめるためには

    C/C++言語の勉強をはじめようとしている者です。 始めようと考えたまではよかったのですが、どうしたら始める事ができるのか分からず、困っています。 私のプラントしてはC言語の勉強をしてからC++の勉強を始めようと思っています。 それはやはり、C言語を勉強してからの方がC++の勉強を進めやすいと考えるからです。(←コレは素人の考えかたでしょうか?) ネットで調べてみたりしたのですが、いきなり変数とはみたいなところから入っているのでよく分かりません。私はまず、C言語の勉強をするための環境を整えるところから知りたいのですが。 コンパイラというものを入れるだけで良いのでしょうか? また、エディタはメモ帳よりもサクラエディタやテラパッドのようなものを利用したほうが良いのでしょうか? 私は学生で本格的に開発しようとかというのではなく、C言語がある程度使えるようにするために勉強したいだけなのでお金はかけずにやりたいのですが可能でしょうか? C++についても上と同じことで悩んでいます。 最後に、勉強していく時に役に立つサイトなどがありましたら教えていただけませんか? よろしくお願いします。

  • C、Objective-Cについて

    現在iPhoneアプリ作成のため、C言語を勉強しています。 以前にJavaを勉強したことがあるため、C言語の勉強を始めてみて、まだまだ序盤ではありますが「Javaと同じ部分が結構あるなぁ」と感じています。 iPhoneアプリを作成しようと思い、勉強を始める際、C言語から勉強した方がよいとネットで多く見られたので、C言語から勉強をしているのですが、Javaと共通部分が多いと感じる今、このままC言語をしっかりと勉強した上でObjective-Cに移行した方がよいか、すぐに移行して勉強をした方がよいか悩んでいます。 アプリ開発をされている方々の経験則からアドバイスを頂けるとうれしいです。 よろしくお願いいたします。

  • CとC#

    VB.NETで開発をしている新米プログラマです。 仕事とは関係なくC#の勉強を始めたところなんですが、仕事でC言語を覚えなければならない可能性が出てきました。 まだ決定かどうかハッキリしない状態なんですが、今のうちからC言語の勉強をしておいたほうがいいと思っています。 そこで、CとC#を平行して勉強するというのはあまり効率のよくないものでしょうか?

  • MPLAB C18のC言語について

    趣味でPICをはじめて、いままではアセンブラ言語でプログラムを書いてきました。 こんどPIC18Fに挑戦しようと思っているんですが、PIC18FはC言語で書いた ほうがいいらしいですね。無料でMPLAB C18というC言語のコンパイラが使えるらしいですし。 C言語は勉強したことがないので、とりあえずC言語を勉強しなければならないんですが、 C言語っていろいろ種類があるんですね。C,C++,C#、あとvisual basic系のCとか。 なんだかさっぱりわかりません。 MPLAB C18のC言語にもっとも近いのはどれでしょうか。おしえてください。

  • C言語は全くの素人なのですが・・・

    C言語は全くの素人(C言語って何?レベル)でも独学で市販のテキスト(初めてのC言語など)などを使って取得出切る物ですか?もしC言語の勉強を始める前にこれだけはしておいた方が楽にC言語の勉強に入って行ける様な勉強がありましたら是非、教えて下さい。

  • C⊂C++?

    C言語を今勉強してるんですが 後々C++も勉強しようと思っています CでできてたのにC++だとできないことはありますか? C++はCの完全な上位互換ですか? またC++を知ったらCで勉強したことが不要になるってことはありますか?

  • C、C++、C#の関係について

    現在C#で簡単な開発しています。 今度就く業務ではC++が必要だから、勉強しておくようにと言われました。 C#を使っていながら、恥ずかしい質問なのですが・・・  ・よく聞く「VC++」と「C++.Net」は、違うのでしょうか?   正式名称が「Microsoft Visual C++ .Net」なので、同じような気がするのですが。   私の使用PCには「Microsoft Visual Studio .Net 2003」が入っています。  ・C言語とC++との違いは何なのでしょうか?   両者の関係が分かりません。   C++を勉強する場合、C言語というのは飛ばしてよいのでしょうか?   C#を習得するときは、C言語を勉強しませんでした。   C++で開発とか、C#で開発とか言いますが、「C言語で開発」とは言わないですよね? C#とC++がどれほど違うのかが不安です。 質問がたくさんになってしまいましたが、よろしくお願いいたします。

  • C言語、C+、C++、C#の違い

    C言語、C+、C++、C#の違いがよくわかりません。 自分でも調べてみましたが、「オブジェクト指向」という言葉が出てきて、よくわかりません。 わかりやすく教えていただけたら幸いです。 初心者がプログラミング言語を始めるならどの言語がいいですか? 幅広い分野で活用でき、初心者でもわかりやすい言語がいいのです。 私は、C言語、C+、C++、C#のどれかを勉強しようと考えているのですが、この中の言語ならどれがいいでしょうか?もちろんこの中の言語以外に初心者にわかりやすく幅広い分野で活用できる言語があればそちらにしようと思います。ありましたら教えてください。

  • CとC++について

    僕は高2で、独学でC言語をやっているのですが、将来的にはゲームを作りたいと思っています。 そこで、CとC++はどっちを勉強したらよいのか教えて頂きたいです。 よく、CをやるとC++の考え方に移りにくいとか聞くし、Cをやっといた方がC++がわかるといった逆の意見も聞きます。 どっちなのでしょうか?

  • C#とCについて

    自分は、C#の勉強をしていてネットワークプログラミングについて勉強したいと思い、「猫でも分かるネットワークプログラミング」という本を読んでいるのですがこの本は解説がC++で書いてあります。 そこで聞きたいのですがC#とC++の関数と言うのは言語が違うのでまったく異なっているものなのでしょうか?この本はとても分かりやすいほんと聞いているので、もしも、二つの言語間の関数があまり違いがないのならば、自分でこの本のC++のコードをC#のコードに変換しながら勉強したいと思っています。

専門家に質問してみよう