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!