nella tua funzione hai definito 2 volte lo stasso parametro b[], poi dovrebbe restituire un complex invece restituisce un complex*.
Prova cosė
Codice:
void addvect(complex *a,complex *b, complex *c){
int i;
for(i=0; i<N; i++){
a[i].re=b[i].re+c[i].re;
a[i].im=b[i].im+c[i].im;
}
}
nel primo parametro (a) troverai il risultato della somma di b+c.