C syntax fixes

Fixes for C and C-like syntax highlighting.

* C-like and C: Exponents may contain '+' too
  (e.g. "1.234e+3" instead of just "1.234e3").
* C: Numbers can have "float" (f), "unsigned" (u), "long" (l) 
  or "long long" (ll) suffixes (case insensitive).

Real C compilers have a few additional restrictions; there
are no unsigned floats, for example. This regexp accepts
a reasonable superset of the valid suffixes.