C is a horrible language to start with and C++ even more. It's wonderfully versatile, but when you try to learn something, you have to be able to focus on the basic principle, without being distracted with trying to remember all memory handles, so that you can free them later on. Also, teachers like to show off with stuff like, instead of trying to teach anything.
((barValue*)((complexType*)foo->bar))[3].x()
hansschmucker: Don't. Really, don't. There are plenty of script languages which won't scar you forever. Anyway, in case somebody missed it, I started writing a JS tutorial over
here Wishbone: Yes, I know. Javascript is just somewhat more complicated than VBScript (or more advanced, if you will), so if you have zero programming experience, I think VBScript is an easier place to start. I learned programming using C++ in school, but if I hadn't had to stick with it to pass, I might not have had the tenacity to keep at it for long. Of course, at some point you pass a sort of "point of no return", after which you can keep going by yourself, but to get there, you need to put in a lot of work.
Javascript has a lot of features, but the nice thing is that you can entirely ignore them if you want to. You can equally well write a BASIC-style function based code or a prototype based OOP-style.
I usually teach JS, because, as a C-LIKE language, it's incredibly well structured, while BASIC variants often adopt bits and pieces from whatever language the developer currently fancies. That may be C, that may be LINGO, that maybe PYTHON, that may be PERL. There's no structure. You think you understand the logic in one part only to see that a different part has an entirely different logic.