So what's changed? Obviously the format is different, I've split it up into multiple sections to make it easier to view peice by peice, some people liked the one page style, some people didn't, but this way makes it a bit easier to maintain I think.
It also looks better :) I've put slightly more thought into the way it looks, still not fancy or anything, but it's better than before.
One important improvement is the fact that all the code works without changes in VC++, which should cut down on confusion a lot. The last one was written while I was using Borland C++ (not C++ Builder) and so certain minor details needed changing to work under VC++, mostly type casts. To an experianced programmer this is trivial and wouldn't present a problem, but if you're new to this (and pretty much anyone reading this is) then it can be a confusing setback, and you might accuse me of making a mistake, which I assure you never happens :D
I've also provided VC++ project files for the examples so you don't need to fumble through making your own to compile them.
As well as being VC++ friendly, I will be testing all of the examples with the Borland C++ command line tools (the free ones, see Appendix) to make sure they compile without errors, and I will provide makefiles for those of you using this compiler. If you use something like LCC-Win32 or cygwin, you're on your own, but all of the code does work, you might just need to tweak things for compatibility. Anyone who uses these compilers, feel free to send me updated files if you needed to change anything to get it to work and I will post it for others.