Я новичок в программировании на языке C, и у меня есть код, который кто-то написал, и мне просто нужно заставить его работать или скомпилировать его.ошибка "недопустимое использование указателя разметки unsetfined типа 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.
какой-нибудь согласованный style пожалуйста. Кроме того, этот код далек от минимального ... – Deduplicator
Также рассмотрите возможность написания C с прототипами вместо pre-ANSI-C. – Deduplicator
Это то, что я получил, когда использовал код. – user4126840