Se io creo una funzione func che ha come parametro d'ingresso un vettore vin di dimensione dim che posso decidere io, e in uscita restituisce un altro vettore vout, sempre di dimesione dim, è corretto fare così?
double *func(int dim, double vin[])
{
double *vout;
// trasforma vettore vin ///
return (vout);
}
int main()
{
int i, dim;
double *out;
double ingr[dim];
for(i=0; i<dim; i++)
{
cin >> ingr;
}
out=func(dim, ingr);
system("pause");
return 0;
}
Ho omesso i vari include per semplicità, mi interessa capire se è corretto che il vettore di uscita sia definito come adimensionale (double *vout). Scrivendo così con devC++ compila senza alcun errore e però, accidenti, non so perchè quando lo eseguo e inserisco il vettore d'ingresso, mi parte la segnalazione errori di microsoft che, almeno credo, sia legata a qualche errore di segmentazione.