我的代码有问题,希望您能提供帮助。当我输入一个奇数时,会出现分段错误,如果是偶数,则会出现总线错误。我正在尝试将 00 添加到数据数组中,以将其从长度 Nprime 变为我输入的新的、更大长度的 Ndprime。我在函数 *fpad 中执行此操作,其中我的 paddata 数组包含 Nprime 复数(即 2*Nprime 分量),并且需要达到 2*Ndprime 的大小。
double *fpad(double *paddata, unsigned int Nprime, unsigned int Ndprime)
{
if (Nprime!=Ndprime)
{
paddata=(double*)realloc(paddata,(sizeof(double)*((2*Ndprime)-1)));
for(i>=((2*Nprime));i<(2*Ndprime);i++) paddata[i]=0;
if(paddata==NULL) /* Checks memory is reallocated */
{
printf("\nError reallocating memory.\n");
free(paddata);
exit(EXIT_FAILURE);
}
}
return(paddata);
}
任何帮助将不胜感激,我看不出我做错了什么。