Jump to content

C or C++? Which do you choose?

Featured Replies

Many people always have a hard time choosing which language to start with. Some say C, others C++. Me? Well, I think learning C++ first is the way to go. C++ offers everything that C has plus more features/data implementions such as OOP. Why learn C then go on the C++ and learn the same stuff over again?

 

Which do yall choose to learn first, and why?

 

COMON PEOPLE! LETS DEBATE.

I don't care for "working up" to something, so I just started with Win32 C++ programming.

  • Author
Originally posted by fafalone

I don't care for "working up" to something, so I just started with Win32 C++ programming.

 

Yea, WIN32 C/C++ programming is simple if you have API experience. The WIN32API is written in C, but theres nothing stopping you to use C++/WIN32 API.

 

The MFC(Microsoft Foundation Classes) is a layer for the WIN32 API which is written in C++, but it fuckin sucks! Microsoft is getting rid of the MFC and just sticking to WinForms(.NET)

Any layer for the API that Microsoft makes is inherently going to be buggy, overly large, and more confusing than the original API.

For one, C++ has different I/O methods. For two it has classses and has more Object-Oriented concepts. other than that, its pretty much good old C (except for all them little tiny additions like namespace and others) So learning C++ first is smart. But if you learn C first, your knowledge on the two would be extensive. So it really depends upon the person on what they should pick, theres really no debate.

COBOL.

 

No other language has such an all-encompassing utility, yet simply cannot be obfuscated beyond a beginner's comprehension.

 

Plus, it keeps my paycheck rolling in :D

  • 4 weeks later...

Well, if you want a language to use for an introduction to programming, then I'd recommend Python. It's cleanly designed, has relatively painless syntax, and is pretty useful--Perl without all the cruft.

 

As for the debate over whether to choose C or C++, that's an old argument bordering on holy war. Both sides raise valid points. I would choose C, simply because it's more compact than its somewhat object-oriented cousin. Learning the bigger language is all well and good, but if you're just getting introduced to the language, then I'd say it's best to start with the smaller, and work up to the larger.

Learn C first. It'l be around forever and you've got time.

Just aman

It doesn't really matter, but I'm learning C++. I'm not going to learn C, then learn C++...it's a waste of time.

  • 2 months later...

for one, I'd stick with C++ for windows (due to classes), to narrow complexity and spaghetti code. If you are going to develop servers (with little or no GUI) stick with C. C++ would be great if they would've just left the input/output methods alone.. iostream sucks, and COBOL is old, and dead. If you want to learn COBOL dont, just forget it.

I studied Fortran in college back in 72 since it was the engineers language. Is it a dead language now? Does anybody still use it?

 

I guess I'm older than I thought.

Just aman

Unless your working on a kernel or drivers, C++ of course. I need OOP!

Well C++ is known to be bad for kernel programming, plain C is what I've mostly seen. I think Linus Torvalds posted something about the cons of programming the kernel with C++. Fortran is horrible for kernel programming, unless you're talking about the command line part, the string manipulation in Fortran is quite nice.:cool:

Originally posted by fafalone

I'm making a kernel in VB!

 

lord help us! atleast make it in vb.net!

lord help us! Please dont make it in any Microsoft-based SDK.

lol, and you're prolly about to tell me any JAVA IDE is superior to Visual Studio. I don't like MS, but I gotta say VS.NET is the best IDE ever!

I don't like IDE's in general. I like separate environments for VB, C++, etc. VS98 was the best.

fafalone have you tried VS.NET? It's absolutely phenominal. It truely is rapid application development. Plus it's been out for a year and still no patches, MS did a great job for once.

I've looked at it and played around a bit.. but never bothered to really learn how to use it. I don't program anymore :/

  • 2 weeks later...

If you're realtively new to programming then C would be best. Although this is by default as C is quite difficult compared to other, similar languages.

 

C++ is good if you've had experiance with programming. I say this because the main advantage of C++ is its OOPness. OO is a difficult enough concept to grasp on its own, let alone when learning how to program at the same time.

I say again, learn Java or C++ if your a beginner. If your unix/linux based or wanting to create device drivers then learn C.

 

dudels, i agree OOP is difficult, even if you understand the theory it's hard to program using OOP to the fulliest efficency.

OOP is supposed to make things easier.

 

In my opinion, it succeeds.

OOP is supposed to make things easier.

 

In my opinion, it succeeds.

 

Sure once it's learned properly. But try teaching C++ to someone who has used Pascal or BASIC for 10 ten years. It's a complete mind set change. A completely different way of solving problems.

Originally posted by Greg Bernhardt

 

Sure once it's learned properly. But try teaching C++ to someone who has used Pascal or BASIC for 10 ten years. It's a complete mind set change. A completely different way of solving problems.

 

^^ What I was trying to say.

 

Now I understand OOP I think it is the greatest thing since having kidneys, but when I first came into C++ I was scared poopless of it.

Archived

This topic is now archived and is closed to further replies.

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.