Array dinamici come parametro di funzione C

di il
1 risposte

Array dinamici come parametro di funzione C

Salve! Avrei un problema per quanto riguarda il passaggio di array dinamici alle funzioni in linguaggio C
Mi spiego meglio, devo realizzare la seguente funzione:
//funzione che prende in input un array che verrà allocato dinamicamente nella funzione stessa
int inserisciElementi(int *vettore){
int n;
printf("Quanti elementi vuoi inserire? ");
scanf("%d", &n);
vettore = malloc(n * sizeof(int)); //allocazione dinamica della memoria
    for(int i=0; i<n; i++){
        scanf("%d", &vettore[i]); //caricamento degli elementi all'interno dell'array
    }
}

int main(){

int *vettore;
inserisciElementi(vettore);
printf("%d", vettore[2]); //stampa di prova per verificare che i valori inseriti nell'array siano visibili anche all'esterno della funzione (per esempio indice 2)

}
Come mai quando provo a stampare gli elementi fuori dalla funzione, non vengono stampati? vengono fuori numeri a caso, cosa che non succede quando uso array non dinamici. Grazie in anticipo

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte