Salve a tutti, ho questo programma insensato che sto sfruttando per capire il procedimento da impiegare quando voglio far restituire ad una funzione un array di valori..

codice:
#include <iostream>  using namespace std; 
void passarray(int x);  
int main()
{         
 int x = 3;     
 passarray(3);               

system("PAUSE");     
return 0; 
}  

void passarray(int x){                    

int array[3];                    
int i;                    
for (i=0; i<3; i++){                        
  array[i]= x;                       
  cout << array[i] << endl;                    
}                   
 return &array;                         
 }
In pratica il mio ragionamento è, se passo il valore 3 alla funzione, e metto 3 in tutti gli slot del mio array, poi come lo passo di nuovo al main?
So che conviene usare i puntatori, sicchè ho pensato di ritornare l'indirizzo dell'array che è presente nella funzione, ma non saprei come riceverlo..

dapprima ho pensato: ok sistemo così
int *p = passarray(3);
Ma in realtà l'indirizzo non è composto da interi, quindi giustamente c'è un errore.

Non so proprio dove sbattere la testa, probabilmente è più semplice di come me lo sto immaginando ma non riesco proprio ad uscirne!

Grazie!