C or C++

Started by
3 comments, last by Krohm 13 years, 6 months ago
i found out yesterday that the programing i did 14 years ago before life interrupted was in c not c++ like i thought

explains why c++ books were confusing me


now that i know why the c++ books were confusing i can probably hurdle the issue no problem but before i muddy the water any more.

Should i learn C or C++ first i know learning c++ i will learn c sorta
and will my standard c++ compiler i picked up compile c fine?
Advertisement
Just about every C++ compiler will compile C code as well.

Your C skills will carry over into C++.

IMO, pure C will let you focus on what's important: branches, loops, pointers, memory, data structures.

From there, you'll have a solid understanding to move toward a more object-oriented approach with C++.

If you want to jump straight into OO, consider a higher-level language, such as C# or Python.
Anthony Umfer
Personally, I learned C++ first and then C.

C++ is, for all intent and purposes, a superset language that (almost) contains C, among other "languages". So learning C++ first will also mean that you will learn aspects of C too.

But as the previous poster has said, C allows you to focus more on core details since it is a much more "leaner" language.

Either way, I don't think it makes too much of a difference on what route you take. My advice would be, just make sure you eventually "learn" them both. I say "learn" because you will never really learn C++. It's such a rich, vast language that's evolving all the time. The next major update of C++, C++0x, is due next year I believe and from what I've seen it might as well be called C+++ because of all those new features that a lot of us are now going to have to learn, and in some cases, relearn. [sad]

Also, if you're up for it, learn C# too. C# is a seriously cool language that can make your Life ten times easier as a budding programmer. It's a much higher language than C/C++, but you can use it in conjunction with those languages to create uber applications, among many other things.
I'd recommend c++ personally due to the 'modern' features it has that you'd have to work without in c. However, I personally use Java and related languages (which are still heavily c-based). The best part of these languages in that it's strict OO - no headers, no linkers, and a standard API built in make it very easy to jump into. Since c# has been mentioned, I'd like to pose JavaFx: it's amazingly easy to learn and has extensive APIs. It's comparable to flash or c#, but it's highly portable.

I know I've sidetracked a bit; however, while learning to program, the language itself is not as important as the concepts. Some languages just let you do a little more with those concepts.
C++: Where your friends have access to your private members
I'd personally suggest "C+1", that is, a subset of C++ which looks pretty much like C.
I seriously consider C++, especially in its latest versions, seriously bloated. Last time I tried to work on a "modern C++" program, it drove my IDE to its knees.

Either basic C++ ("C+1" as I call it) or something else. Say Java or C#.

Previously "Krohm"

This topic is closed to new replies.

Advertisement