Jump to content
  • Advertisement
Sign in to follow this  
trapeze

learn C or C++ ??

This topic is 4109 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

i am thinking about learning even though i know very little of them. but, i don't know which is better ? by being better it may depend on my purposes. however, i would like to hear from others. thx.

Share this post


Link to post
Share on other sites
Advertisement
Quote:
Original post by Promit
Most likely neither. What languages do you already know?



hm... matlab.. please don't laugh out loud...

i do know a bit C/C++.

Share this post


Link to post
Share on other sites
Quote:
Original post by Kazgoroth
Probably neither of those. No one can give you a sensible response to that unless you tell us what your goals are however.


something i will need to work in the industry. more specifically, computer networks, communications, telecommunications and whatnot.

Share this post


Link to post
Share on other sites
You will need many different languages to work in the industry. I'd pick one of C#, Java, C++. Probably in that order... but you will have to keep learning new languages as you go (this is not as big a deal as you think, once you know a couple its not much harder than learning a new API)

Share this post


Link to post
Share on other sites
Go with C++. If you learn C++, you will automatically learn C as well.

Furthermore, it is very important that you choose an object oriented language, as that is what is used in the industry. Once you know one of the OO languages, it is fairly easy to learn the others.

C++ is the most difficult ones of the three (C++, C#, Java), and when you master C++, you will find it very easy to learn C# and Java. The opposite will not necessarily be the case.
C++ is still the most used language in the industry (actually it is almost exclusively used in the industry), so IMO it will be the most valuable for you of the three, if you wish to work professionally with it.

If your choice stands between C and C++, there is no doubt that you have to choose C++. It becomes a bit more fuzzy if you can choose among all three OO-languages.

Share this post


Link to post
Share on other sites
Quote:
Original post by Mercenarey
Go with C++. If you learn C++, you will automatically learn C as well.


Not true. The languages are completely different. If you "know C" by "learning C++", you either haven't learned C++ at all or you will get a nasty surprise trying to write non-trivial C programs.


Quote:

C++ is the most difficult ones of the three (C++, C#, Java), and when you master C++, you will find it very easy to learn C# and Java. The opposite will not necessarily be the case.


"When you master C++". This could take a very long time. It is arguable that onemight spend less time learning C# first then moving to C++.

Quote:

C++ is still the most used language in the industry (actually it is almost exclusively used in the industry), so IMO it will be the most valuable for you of the three, if you wish to work professionally with it.


This is true.

Quote:

If your choice stands between C and C++, there is no doubt that you have to choose C++. It becomes a bit more fuzzy if you can choose among all three OO-languages.


Just to note: there are many, many more object oriented languages than the 3 you have mentioned.

Share this post


Link to post
Share on other sites
Which other than those three do you want to use for game development?

Sure, it may be possible, but Im not writing a thesis on OO-languages here, Im giving advice on game development.

As for C and C++: I agree, there are alot of tricks that you would use in C, that a good C++ developer would never use (although he could). When reading C code, I have been very surprised at seeing stuff I had never seen before, or thought was at all possible.

However, when that is said, I believe that learning C++ would give you a sufficient level in C to build on. You won't know every trick in the book, but you will have a very solid foundation. The rest you can look up as you go IMO.

Share this post


Link to post
Share on other sites
Quote:
Original post by Mercenarey
Which other than those three do you want to use for game development?

Sure, it may be possible, but Im not writing a thesis on OO-languages here, Im giving advice on game development.

As for C and C++: I agree, there are alot of tricks that you would use in C, that a good C++ developer would never use (although he could). When reading C code, I have been very surprised at seeing stuff I had never seen before, or thought was at all possible.

However, when that is said, I believe that learning C++ would give you a sufficient level in C to build on. You won't know every trick in the book, but you will have a very solid foundation. The rest you can look up as you go IMO.


I do realise this, most of what you say has a lot of truth. But not for beginners. In fact if this wasn't the "For Beginners" forum I probably would not have replied like that.

I believe beginners do themselves an injustice by trying to learn C and C++ first. Python is an OO language that can be used for game development. You might not be writing Doom 17 and Quake 42 in it any time soon, but for a starting language it is more than adequate. The types of games people write while learning game programming tend to be retro 2D game clones, not AAA blockbusters.

There are enough pitfalls in starting programming and game programming already without adding "undefined behaviour" to the mix.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!