   C Before C++ & Book Recommendations
  Hullo,This thread popped up a question for me, whether I should learn C before C++. I plan on expanding into the graphical/game side of programming afterwards, and would be interested in OpenGL, Allegro, and SDL.A little about me, I've already started learning C++. In the past, I've tried to learn others, such as Java, C++ again, Python, and BlitzBasic but never did much with them. However, I read alot of tutorials, each one of them explaining arrays , and data types, over and over again. I feel that I've gotten down the basic concepts, and am only lacking on pointers and how to properly use arrays in C++ now.The author of the thread (and thereof the website) claims to have 2+ years of experience, and when he delved into DirectX, and OpenGL, met many errors because he didn't know C.I was also looking through these posts. I want to learn to code in C++ correctly, as in writing effeciant C++ code, but also not to be looked down upon. I choose C++ over easier Python and other dynamic languages, because it's statically typed, which I support.This all relates to books to get though. I know there are tutorials online, but I much prefer a book to have in my lap to program from, or one I can read on the go. I've looked at  Beginning C++ Game Programming and it seems like the perfect book for me. I've tried starting several languages before, C++ included, Python, Java, C#, and have read alot and then some text about arrays, and data types. I feel that I understand them pretty darn well. While I may not completly understand pointers, or the best way arrays are to be used, I feel confident on coding with them, I don't need another 20 page description on the differences between different data types either. Beginning C++ Game Programming seems to introduce the concepts quickly, so while may not necessarily be great for the techno-newbie, seems perfect for me, and the adition of the book being overal short and based around games, are two extra pluses.Since the book is recommended by many, and seems to fit for my needs, I will be getting it, however, is there anything else I might need in addition? After reading this book, and programming from what I've learned for a while, and once I feel confident with what I have learned, will I be able to take on OpenGL, SDL, or the Irrlicht graphics engine and be able to understand and learn the code and concepts thrown at me, or be how I am now and feel like I'm reading greek?My last question, was about reference books. I've seen them before, but don't understand them. Are they books that holds all the syntax of a language, and describes what it does in a sentence? And if so, around the point of learning OpenGL, would it be helpful to pick up a reference such as C++: The Complete Reference?   
  Hi,C and C++ are almost two different things all together - it's more of a different way of thinking. If you are not totally purist about it, you can doing OOP programming in C++ using C's libararies function such as printf or fscanf (though it's just my opinon).I don't see a need to learn C before learning C++, but what it helps is to let you appreciate the principles of OOP - why use encapsulation, inheritance, polymorphism and interfaces. Personally, I learn C before C++, as this is how my school progresses, and found "Moving from C to C++" a very enlightening read.I would recommend the book "The C++ Standard Library from Scratch" as your next step, if you have understood the basic concepts of C++. Books like "Effective C++" shall be a next good stepping stone too (though I recommend you get an earlier edition if you could...the latest seem to be a slightly too steep for beginners).Hope this helps!   ;  Get Bruce Eckel's Thinking in C++ 2001, v1 I think. It comes with a great C tutorial that prepares you to move to Java and C++.   ;  My recommendations hold true. I swear by these those two books in my article.http://www.foxtrotalpha.com