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:
“I can barely conceive of a type of beauty in which there is no Melancholy.”
—Charles Baudelaire (18211867)
“Firm, united, let us be,
Rallying round our Liberty;
As a band of brothers joined,
Peace and safety we shall find.”
—Joseph Hopkinson (17701842)