learn c++

Posted on 1998-11-08
Last Modified: 2010-04-02
how would i go about leaning c++ when i know very little about programming languages.  i want to learn and go to school after i get a basic ground of the language.
Question by:burny
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
LVL 22

Expert Comment

ID: 1177238
I would not recommend C++ for beginners.  There are some C++ books that are for beginners, but I really don't think it is a good idea.

I would start with Pascal or Visual basic at least until you have the basic principles of programiming down..  In the long run, you are likely to learn faster and end up a better programmer in the end
LVL 10

Expert Comment

ID: 1177239
Try programming Pascal, or get a good book on C....
LVL 22

Expert Comment

ID: 1177240
Actually, I would not recommend C over C++.  It has the same flaws.  They are jokinly described as "providing the programmer with enough rope to shoot himself in the foot" (For our international experts,  That's a mixed up mess of two english idioms.)  The point is that C and C++ have wonderful flexibility that is a great benefit to experienced programmers, but that is a great detriment to beginners.  C has such a fleixble syntax that a novice can make many mistakes that will compile and run but will do something that the programmer did not intend.  Simpler languages, like Pascal have a much simpler syntax that is much more likely to detect errors.
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Accepted Solution

TheGrinch earned 50 total points
ID: 1177241
Do not "mess up your head" with C or Pascal. Virtually no one in the commercial world uses either. C++ is the one truw programming langauge in common use today. Visual Basic is there, too, but serves a niche. (My opinion. Others may disagree.)

So... start with C++.

Get a book designed for beginners... I suggest "C++ in 21 Days". Very important: Make sure the book is written for the same version of the C++ compiler that you have. This probably means MS Visual C++ 5.0. Do not try otherwise.

Don't "cheat" -- do every exercise in the book. You'll do fine!

LVL 10

Expert Comment

ID: 1177242
I know Pascal somewhat well, and I'm beginner in C++, but I think even though C++ is difficult ot learn it is the best language there is... Sometimes, when programming in Windows, VC++ is not the best way to go.. There are also nice tools as Delphi, but the problem is that it doesn't allow you to do whatever you want with the system.... It usually detects the smallest error, like if you miss a semicilon in specific places...

btw- I said C because it doesn't have all that OOP, ie...classes, objects, membert functions and so on.... Sometimes it's difficult for beginner to learn that... I have experience with Delphi which is an OOP Pascal for Windows, and when I stareted C++ it was quite easy for me to learn the the syntax... The definitions, and everything I know from Pascal....

LVL 22

Expert Comment

ID: 1177243
>> said C because it doesn't have all that OOP, ie...classes, objects, membert functions and so on....
Removing them certainly removes a lot of complexity, but those aren't the things that tend to cause the problems for students.

Common problems for students are:
1.  0 referenced arrays
2.  C's weird pointer/array semantics (not the least bit weird to experienced C/C++ programmers, but weird even to advanced programmers who haven't worked in C/C++.
3.   C's NUL terminated strings.  (If there isn't at least one  NUL terminated C string problem on this site on a particular day, then school must be out.)
4.   C's overabundance of operators.  Especialy & and | for && and ||.
5.  Preprocessor problems.  especially with header files and min and max macros.

I swear that the vast majority of beginner questions I answer are on these topics (and probalby a few more).  That is why I think C is bad for beginners.  They should focus on program design issues, not syntax and semantics.
LVL 10

Expert Comment

ID: 1177244
You're right :)

Expert Comment

ID: 1177245
There is currently (worldwide) a debate on the suitability of C++ as a first language. At some universities C++ has been introduced as a first language with success. IMHO, it depends a lot on the the individual. If you don't have problems with thinking abstractly (think of you mathematics abilities - can you easily visualize "word problems"?), then go for C++. If you problems with abstract ideas, then go for something like Pacal.

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
IdTelnet1DataAvailable handler freezes the Application 4 104
PDF library for Delphi 2 149
C++ Class Serialization, Encapsulation and Formatted Output 8 109
Gaming Software 1 38
Templates For Beginners Or How To Encourage The Compiler To Work For You Introduction This tutorial is targeted at the reader who is, perhaps, familiar with the basics of C++ but would prefer a little slower introduction to the more ad…
C++ Properties One feature missing from standard C++ that you will find in many other Object Oriented Programming languages is something called a Property (…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.

738 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question