Click here to Skip to main content
15,614,665 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Years ago I had a lot of experience programming in C on PCs using Microsoft's C compiler 5.1 for DOS. I would like to update my programming skills by learning C++ for the Windows environment using Visual Studio. I am looking for a good book that assumes you already know C rather than a book that starts from scratch for beginning programmers with no prior experience.

Can anyone recommend a good Visual Studio C++ book for C programmers?


Well, to be honest, the less C you know the better, b/c apart from basic syntax, nearly everything you did in C, should be done differently in C++. You should use the string class, not a pointer. You should use iostreams, not file handles. So, I would say, read a C++ book, and before you do anything the C way, try to find out if it is done better in C++.

The Stroustrup book is a good reference for C++ and if you know C, I think you'd be technical enough to handle it ( it's not a dummies book )
Share this answer
Forget you know C and grab a copy of "Accelerated C++" by Koenig and Moo. It's designed for experienced programmers learning C++. The reason I said forget about C is that you won't see a lot of C concepts like pointers and arrays 'til towards the end of the book so knowing about them won't make learning any easier.


Share this answer
Because you aren't a beginner, the best book for C++ is Stroustrup's The C++ Programming Language.

Now, before you jump into Visual C++, which is intended to program for Windows more than for DOS (I take that earlier you used to program console/DOS applications), have a read of Petzold's Programming Windows which will introduce you to Windows programming. This book is in C but you must know that Windows API itself is in C.

After you familiarize with Windows programming, for Visual C++ (which includes both the Visual Studio IDE and MFC - the C++ wrapper library over Win API) I would suggest either Mike Blaszczak's Professional MFC or Jeff Prosise's Programming Windows with MFC but I am not sure of latest editions of these. But anyway, MFC is not updated SO MUCH that you need a new book; MSDN must suffice. However, the newer (2003, 2008 etc) IDE may need a thin book.
Share this answer
I would break it down into four areas:

1) The new syntax and "rules" that C++ introduces and changes (for example variables don't have to be declared at the start of a function)

2) The new approaches to building the program (what CG mentioned, plus understanding the right way to use classes), and a more general object-oriented text may be more use here

3) One or more C++ frameworks for Windows. Don't forget that the Windows API is a C API - you can't pass an iostream to a Windows file function, and a good understanding of a framework that removes some of the low-level interfacing work will make you much more productive.

4) One or more general C++ frameworks. STL and Boost spring to mind. A lot of the problems you will face, along the lines of "how the *** do I do this in C++ ?" have already been solved, and the solution tested very thoroughly. Take advantage of all that work.
Share this answer
you can try thinking in c++ as good starting point for learning c++. thinking in c++ EBook available for free on internet by it's author Bruce(I believe you require help of google in this case).
Share this answer
If you like a more practical approach, just give look also to
"C++ in action", available also as a web book at[^]

It points very well the difference between C and C++ and also offer good critical analysis on the development of C++ under windows environments.
Share this answer
Kernighan & Ritchie - The C Programming Language, 2nd Edition
Stroustrup - The C++ Programming Language, 3rd Edition
Josuttis - C++ Standard Library: A Tutorial and Reference
Meyers - Effective C++ And More Effective C++
Meyers - Effective STL
Addison Wesley - Scientific and Engineering C++
Addison Wesley - C++ Templates: The Complete Guide
Stroustrup - The Design and Evolution of C++
Share this answer
Go for Bruce Eckel..

Also for implementation you can look[^]
Share this answer

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900