cd /usr/include; h2ph * sys/*
If run with no arguments, filters standard input to standard output.
/usr/include/*.h /usr/include/sys/*.h
etc.
perl
%sizeof array for you.
It doesn't handle all C constructs, but it does attempt to isolate definitions inside evals so that you can get at the definitions that it can translate.
It's only intended as a rough tool. You may need to dicker with the files produced.