Naming Conventions Names should be meaningful in the application domain, not the implementation domain. This makes your code clearer to a reader who is familiar with the problem you're trying to solve, but is not familiar with your particular way of solving it. Variable Use Hungarian notation, which uses the data type as a prefix to the variable name in lower case. Thus, all names should be parts of speech which will make sense when used with the language's syntactic keywords. Variables should be noun clauses.
Longer names contain more information than short names, but extract a price in readability.
Since macros can be dangerous, follow tradition and fully capitalize them, otherwise follow the conventions for function or variable names. They will follow a variable name, so make them lowercase to make the code look nice. Enumeration Constants Enumeration constants are capitalize. If absolutely necessary, consider a prefix. Function Names Functions should be in lower case and named for what they do, not how they do it.