The C++ standard refers to the term "dynamic type" (and the C standard refers to "effective type" in the similar context), for example
<
In C, the effective type is only relevant when you access an object. Then in is determined by
memcpy)void* is converted to another pointer type (e.g int*), which then is dereferenced.The latter is usually what happens with malloced objects, if you assign the return value of malloc to a pointer type.