I have used splint a couple of times and found it too verbose: I
disabled most of the warnings. I think that this tool may provide
interesting results if you correctly annotate your code. Without code
annotation, this tool is not very helpful.
I sometimes use sparse and consider it as a valuable tool. It provides
a wrapper around gcc, called "cgcc". As a result, it is simple to run
sparse on a program even if it contains many source files (export
CC=cgcc
and voilà). This program works best if you are analyzing
Kernel source code.
As a sidenote, I also use pmccabe on a regular basis. pmccabe is not a
static analyzer: it calculates cyclomatic complexity. It may help you
find the most complex functions in your program. Those functions are
likely to be error prone and hard to test.