Recurring errors when writing C programs
This document collects recurring programming errors and stupidities found in a lot of code.
Unnecessary casts
Refrain from using casts whenever an implicit conversion
without warnings is possible. This applies to conversion between
any-pointer-type and void *, as well as all numeric values.
(N.B.: When their types are known, i.e. a bit of care needs to be taken when
using varargs functions like printf.) Why casting is really bad.