I am invovled in a project where I need to analyze C code that was written a couple of years ago by another programmer. Most of it is self-explanatory. However, it appears that some of the routines were written as if this individual would be the only person ever to view the code. In other words, he used a lot of abbreviated names for variables, pointers, etc. - often employing single characters which are completely cryptic.

I've been using Code to Chart to get a general idea of what these parts of the code accomplish, but that tool is far from being a complete analysis tool. I was wondering if anyone knows of a C analyzer that would track pointers, function calls, memory allocation, preprocessor directives, variables and their scope, etc. Most of the apps that I've found which do this are quite expensive and on an enterprise level. Any help is greatly appreciated.