我是C編程新手,我有一個其他人編寫的代碼,我只需要使它工作或編譯它。錯誤「無效使用未定義類型」struct cmplx'取消引用指向不完整類型的指針「。如何解決它?
# include <stdio.h>
# include <math.h>
# define AP_INC 1
# define H_INC 4
/* plot the power spectrum */
do_peak(ftdat,n_out,recno)
struct cmplx *ftdat;
int n_out;
int recno;
{
extern float del_f;
extern float del_t;
extern FILE *pkfile;
extern int ilowpk;
extern int ihipk;
float time;
float fpeak;
float pkval;
int ipeak;
int i;
/* find the peak of the spectrum */
pkval = ftdat[ilowpk];
ipeak = ilowpk;
if(ilowpk < ihipk){
for(i = ilowpk+1; i < ihipk; i++){
if(ftdat[i] > pkval){
pkval = ftdat[i];
ipeak = i;
}
}
} else {
for(i = ilowpk+1; i < n_out; i++){
if(ftdat[i] > pkval){
pkval = ftdat[i];
ipeak = i;
}
}
for(i = 0; i < ihipk; i++){
if(ftdat[i] > pkval){
pkval = ftdat[i];
ipeak = i;
}
}
}
/* convert ipeak to a frequency */
fpeak = (float)ipeak*del_f;
/* compute the time */
time = (float) recno*del_t;
/* write to output file */
fprintf(pkfile,"%f %g\n",time,fpeak);
return;
}
我得到的錯誤是「無效使用不確定型‘結構CMPLX’提領指向不完全類型的」 你們都可以檢查此鏈接瞭解更多信息http://codepad.org/HdbgppgM 請不要讓我知道如何解決它。請記住,我不知道C但只有matlab。 謝謝 Anil。
請保持一定的風格。此外,該代碼遠非最小... – Deduplicator 2014-10-09 19:47:59
另外,考慮使用原型而不是預ANSI-C編寫C語言。 – Deduplicator 2014-10-09 19:57:39
這就是我使用代碼塊時得到的結果。 – user4126840 2014-10-09 20:10:27