I am trying to build a simulation of a solar system in opengl using C. I can't seem to figure out how to write the code for calculating the direction of the force exerted upon a planet by another. This what I have so far:
void attraction(planet self, planet other, float *direction)
{
   float d = vecDistance(self.p, other.p);
   //calc the force of attraction
   float f = G * ((self.mass * other.mass) / (pow(d, 2)));
   //calc the direction of the force
   float vectorDist[3];
   vecSub(self.p, other.p, vectorDist);
   direction[0] = f*vectorDist[0] / d;
   direction[1] = f*vectorDist[1] / d;
   direction[2] = f*vectorDist[2] / d;
}
float vecDistance( float *pV1, float *pV2 )
{
    float fLen=0.0f;
    if(pV1 && pV2)
    {
        float av[3];
        vecSub(pV2, pV1, av);
        fLen=vecLength(av);
    }
    return fLen;
}
void vecSub( float *pV0, float *pV1, float *pVRes )
{
    if(pV0 && pV1 && pVRes)
    {
        pVRes[0]=pV0[0]-pV1[0];
        pVRes[1]=pV0[1]-pV1[1];
        pVRes[2]=pV0[2]-pV1[2];
    }
}