> char (*f[6])(); /* <array of><pointer to><function returning><char> */ The comment provides no useful information. Any experienced C programmer should be able to read the declaration as fast as he can read the comment, maybe faster. And the declaration provides a PICTURE of the context in which `f' has meaning, unlike the comment.