0

调试我在这个函数的运行时出错:

void pre_filter_Computations(double **radius,double **theta,int cols,int rows){

double x[cols],y[rows];
double X[cols][rows], Y[cols][rows];
double epsilon=0.0001;

 printf("Entering prefilter function\n");

 for(int i=0;i<cols*2;i++){
    x[i]=((double)(i-cols)/2/((double)cols/2;
 }
 ...

我不得不改变这个 for 循环。在更改它运行项目之前,它会进入和退出该功能。但是对于循环中的错误,我不得不更改它和另一个类似的。当我再次运行时,我无法进入该功能。调试我有一个暂停的信号 SIGSEGV:在打印行输入函数之前的分段错误!

关于 theta 和半径:

double** radius, **theta;

raidus=(double**)malloc(sizeof(double*)*rows);
 for(int i=0;i<rows;i++);
  radius[i]=(double*)malloc(sizeof(double)*cols);

theta=(double**)malloc(sizeof(double*)*rows);
 for(int z=0;z<rows;z++);
  theta[z]=(double*)malloc(sizeof(double)*cols);

有人明白错误在哪里吗?

4

0 回答 0