They're hard problems for a reason …
99 ways to program a hex, Part 11: C89, const correctness, assertive, GCC extensions
Okay, what failed this time?