Ciao,
di seguito parte del codice che mi sta facendo impazzire, non sono un super esperto di C.
main(){
int grade;
int *coeff;
coeff = (int *)malloc(sizeof(int));
.........
grade = enterCoeff(coeff);
dove la subroutine e':
int enterCoeff(int *poliCoeff){
int i =0;
while( ......){
i++;
poliCoeff=(int *)realloc(poliCoeff, sizeof(int)*(i+2));
......;
}
return(i);
}
In pratica alloco un array di un elemento nel main, e dinamicamente incremento la dimensione dell'array nella subroutine. Mi aspetto che all'uscita dalla subroutine il puntatore *coeff sia aggiornato all'indirizzo dell'array reallocato, ovvero che l'indirizzo di poliCoeff[0] al termine della procedura enterCoeff coincida con l'indirizzo di coeff[0] nel programma principale dopo l'esecuzione della subroutine.
Questo non avviene, e lo vedo facilmente inserendo un paio di printf nel main e nella subroutine. Sapete aiutarmi a capire dove sbaglio? Sto facendo un errore concettuale o di sintassi?
Grazie ......