Innanzitutto vi ringrazio delle risposte!Quindi sarebbe la stessa cosa se invece di utilizzare la funzione io inserissi direttamente nella main
Altri due piccoli chiarimenti:codice:int main(void){ .... static struct phaseSpace xAndVNew; xAndVNew.v = (*pXAndVOld).v + forceHarmonicOscillator(omega2, (*pXAndVOld).x) * dt; xAndVNew.x = pXAndVOld->x + pXAndVOld->v * dt; .... }
Se scrivessi:
struct phaseSpace euler(double m_dt, double m_omega2, struct phaseSpace *m_pXAndV);
cioè senza l'asterisco non sarebbe sempre "una funzione di nome "euler" che ritorna come tipo un puntatore a un struttura di tipo "phaseSpace". Cioè quando dichiaro una funzione, e voglio che quella funzione ritorni la locazione di un puntatore, devo specificare l'asterisco davanti al nome della funzione?
************************************************** **************
Ultima cosa: il termine "static" in questo caso va davanti a struct perchè dopo l'uscita della funzione si vuole che venga trovata da altri programmi giusto? Quindi, se inserissi la dichiarazione prima della main non ci sarebbe bisogno del termine "static" ?