Non solo ... ma passare il puntatore alla nuova area dall'esterno non e' corretto ... non deve essere

Dati nuovodati (Dati al, double time, double length)
{
...

ma

Dati nuovodati (double time, double length)
{
Dati al;
...