Just watched a tut video sayin learn C before C++.. question

Should I just jump into C++ right off the the get go? I was thinking I should learn C++ first and foremost considering that I have read posts saying learning C will teach me bad habits.....

anyone able to go into this in detail?.. but in a way that wont fill a page and to the point of why I should or shouldn't learn C first?

Atm learning C++ and going well
Last edited on
Rather you learn C before C++ or vice versa, there are trade offs.
C++ can be thought of as an upgrade of C, more specifically an upgrade that introduces object oriented programming. Object oriented programming is pretty hard to explain, but in a nut shell it can be thought as using data in a way that you have the option of sharing that data with specific parts of the program your writing or hiding from specific parts of the program your writing . And having your program be very flexible at the same time, as in have your program be able to recall something like additions, functions, or anything you want.(There's a lot more to it but it's just an abstraction.) Versus the basic C programming that consists of Procedural programming which is the opposite of Object Oriented programming. Example data in a program can only be used by certain things in a certain ways and lots of things where codependent.

BUT! the point here is that there's always a draw back from picking one over the other.
If you pick to learn C++ first then you might get used to Object Oriented programming and when you try to learn C then you'll end up pulling out your hair because you'll feel like so many things are missing.
And if you pick to learn C first then you'll get use to Procedural Programming and you'll have a habit of ignoring the advantages that Object Oriented programming brings, and you'll be also banging your head against the wall trying to understand Object Oriented programming due to you not being used to it.

Either way you have a bit of research to do because it's up to your classification of your way of thinking that will let you choose the right way for you.
Last edited on
closed account (zb0S216C)
Yoda wrote:
"I have read posts saying learning C will teach me bad habits...."

C does not teach bad habits; the teacher teaches bad habits. Good practices in C are also good practices in C++ because they are the same language.

You can learn either language first. I, personally, would learn C first if I had to re-educate myself. Why? Because I find that C is the basic, stripped C++ which has fewer complex concepts to overcome. Others may disagree, but as I said, it's my personal opinion.

Ok based on responses I will continue with C++ first since C will have less complex ideas to absorb. I used python enough to pick up on some things that help me a little learning C++ also.

I will tackle C++ then learn C since I have already started. Might be backwards but with the way I learn things .... this may end up helping me.

thanks for your comments.
Last edited on
Topic archived. No new replies allowed.