All of the C language? Probably a year or so of daily exposure to get a solid grasp of everything there is to know about it.
All of C++? Give up now! C++ contains features that 95% of all "C++ programmers" don't even know about. Esoteric things like templates ...
If I might ask, what kind of programming are you looking forward to?
- GUI applications?
- Any plans to support multiple platforms (Windows, Linux, OS X, ...)?
- What about localization and internationalization (l10n/i18n; language support, translations, ...)?
- Accessibility (making your application easy to use with accessibility programs like screen-readers)?
- Will you be using 3D or fast 2D drawing? Audio?
These are just a few things to consider about your ultimate goals. While you can have all of these things in the C/C++ family of languages, it's not exactly an easy thing to bring together, much less bring together peacefully in a way that actually works well. I've been programming for 12 years, much of that with C, and I'm starting to turn away from the language. If you want to honestly answer "YES!" to all of the above questions, you might want to consider looking into XULRunner
, instead. It's not perfect (by any means!) but it's a great place to start, and an even better place to stay.
If instead you want to make homebrew games for recent-ish consoles, or something silly like that, C is good ... don't bother with C++ for that. For older consoles, learn the assembler language for the architecture of your choice.
Anyway, there's some tips which might send you in the right direction.