Sí. En C++ hay que tener más cuidado con eso. Pero en C, malloc retorna dirección que usas para lo que tú quieras
Puse así un ejemplo porque responder con un "sí" rotundo quedaría feo
Código (c) [Seleccionar]
void* temp = malloc(100);
int* tInt = temp;
char* tChar = temp;
int tIntSize = 100/sizeof(int),
tCharSize = 100/sizeof(char);
tChar[0] = 'h';
tChar[1] = 'o';
tChar[2] = 'l';
tChar[3] = 'a';
printf("%i", tInt[0]);
Puse así un ejemplo porque responder con un "sí" rotundo quedaría feo