Type Safety
malloc returns a void pointer (void *), which indicates that it is a pointer to a region of unknown data type. The use of casting is only required in C++ due to the strong type system, whereas this is not the case in C. The lack of a specific pointer type returned from malloc is type-unsafe behaviour according to some programmers: malloc allocates based on byte count but not on type. This is different from the C++ new operator that returns a pointer whose type relies on the operand. (see C Type Safety).
One may "cast" (see type conversion) this pointer to a specific type:
There are advantages and disadvantages to performing such a cast.
Read more about this topic: C Dynamic Memory Allocation
Famous quotes containing the words type and/or safety:
“Music, in performance, is a type of sculpture. The air in the performance is sculpted into something.”
—Frank Zappa (19401994)
“There is always safety in valor.”
—Ralph Waldo Emerson (18031882)