I've seen some of these, and they do have some good stuff. will probably check the others out as it's always neat to have more stuff to refer to. So thanks.
As an aside, and some caution....
(and MS is probably the biggest cuplrit here since they love breaking standards ... and I"m probably stating the well known but ah well ...)
main() must be int in the ANSI C standard (and I see in one of those links they don't specify at all and rely on compilers -- which is a bad bad practice). It's true that most compilers default it to int (especially K&R compilers), but... it's best to specify int (and not void or anything else). And prototypes are your friend indeed! But MS's C code is inherently broken (since they specify void) and won't work everywhere.
One thing I'd recommend is usually specifying -Wall in gcc.
Oh, and valgrind and dmalloc are quite useful. Never tried electric fence or the others, but valgrind is my favourite (saved me on several occasions I might add), plus doesn't really i nvolve modification of code -- just specifying debug symbols to be inserted into the executable.
Hope I didn't horribly bore you all, haha