Process returned -1073741819 0xc0000005 - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! При выполнении любой из двух функций возникает ошибка.
void polusum(double **a,double *mas,int row,int col)
{int i=1,j=0;
    mas = (double *)malloc(col*sizeof(double));
    for(j=0;j<col;++j)
    {
        mas[j]=1.0;
        for(i=1;i<row-1;++i)
            if (a[i][j]>(a[i][j]+a[i][j])/2.0)
            {
                mas[j]=0.0;
                printf("%d",i);
                break;
            }
    }
}
 
void binmatrix(double **a,int row,int col,int p)
{int i,j;
    if (maxarr(a,row,col)-minarr(a,row,col)>p)
        for(i=0;i<row;++i)
            for(j=0;j<col;++j)
                if (a[i][j]>0.0)
                    a[i][j]=1.0;
                else
                    a[i][j]=0.0;
}
Подскажите, пожалуйста, где ошибка?

Решение задачи: «Process returned -1073741819 0xc0000005»

textual
Листинг программы
arr=(double**)malloc((*row)*sizeof(double*));

Объяснение кода листинга программы

  1. В данном коде выделяется память под массив указателей на double с помощью функции malloc.
  2. В скобках после строки (*row)*sizeof(double*) происходит вычисление размера памяти, которую необходимо выделить. Здесь (*row) - это значение переменной row, которое должно быть определено в другом месте кода.
  3. Тип данных double* означает, что мы выделяем память под массив указателей на double.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.75 из 5