Manugal
27-06-2005, 18:21
Ciao a tutti!
Devo creare una funzione che esegue operazioni su vettori complessi (poi dovrò farlo anche per matrici). Io ho fatto così (supponendo che io passi dei valori a questi vettori dal main):
#define N 4
typedef struct{
float re;
float im;
} complex;
complex b[N],c[N];
complex addvect(complex b[], complex b[]);
complex addvect(complex b[], complex b[]){
int i
complex a[N];
for(i=0; i<N; i++){
a[i]=0.0;
for(i=0; i<N; i++){
a[i].re+=b[i].re+c[i].re;
a[i].im+=b[i].im+c[i].im;
}
}
return a;
}
A questo punto mi da errore in fase di compilazione, due messaggi sono significativi:
Subscripted value is neither array nor pointer
Incompatible types in return
Perché? :cry: Mi pare di aver seguito le regole..... Grazie.
Devo creare una funzione che esegue operazioni su vettori complessi (poi dovrò farlo anche per matrici). Io ho fatto così (supponendo che io passi dei valori a questi vettori dal main):
#define N 4
typedef struct{
float re;
float im;
} complex;
complex b[N],c[N];
complex addvect(complex b[], complex b[]);
complex addvect(complex b[], complex b[]){
int i
complex a[N];
for(i=0; i<N; i++){
a[i]=0.0;
for(i=0; i<N; i++){
a[i].re+=b[i].re+c[i].re;
a[i].im+=b[i].im+c[i].im;
}
}
return a;
}
A questo punto mi da errore in fase di compilazione, due messaggi sono significativi:
Subscripted value is neither array nor pointer
Incompatible types in return
Perché? :cry: Mi pare di aver seguito le regole..... Grazie.