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:
“But the mothers yearning, that completest type of the life in another life which is the essence of real human love, feels the presence of the cherished child even in the debased, degraded man.”
—George Eliot [Mary Ann (or Marian)
“The Declaration [of Independence] was not a protest against government, but against the excess of government. It prescribed the proper role of government, to secure the rights of individuals and to effect their safety and happiness. In modern society, no individual can do this alone. So government is not a necessary evil but a necessary good.”
—Gerald R. Ford (b. 1913)