(*) Caveat: It must be a small challenge involving a relatively simple task. I don't have a lot of time to waste on this.
Nice caveat. Let me rephrase that another way for you: it is difficult to implement complicated functionality in C. Indeed, this is one reason to use higher level languages. You can achieve more in less time.
Anyone who imagines that all fruits ripen at the same time as the strawberries, knows nothing about grapes. -- Philippus Paracelsus