I jsut have a question concerning malloc and how exactly is best to use it.

I've created some variables for example:

Code:
typedef struct tagVector3{
	float x,y,z;
}Vector3;


typedef struct tagSomething{
	Vector3 *position;
}Something;
when creating the variable "Something" what I would normally do would malloc Something and then malloc the Vector3 variable "position" within it. I've never known if this is the correct way, but always had the nagging feeling it wasn't, so does anyone have an answer?

Hope this makes sense and thanks for any help,

H