Вопрос в следующем.
А что собственно будет если память не освобождать после
скажем выделения malloc()? Если программа заканчивается корректно?
Ну и простой тест:
#include<stdio.h>
#include<stdlib.h>
int main()
{
double **arr=NULL;
int i=0,j=0;
arr=(double**)malloc(1000000*sizeof(double));
for(i=0;i<1000000;i++)
arr[i]=(double*)malloc(sizeof(int)*1000000);
printf("\n Array is Allocated.");
for(i=0;i<1000000;i++)
{
for(j=0;j<1000000;j++)
{
arr[i][j]=i*j;
printf("\n %E", arr[i][j]);
}
}
return 0;
}
Почему сегфолтится?
И что будет если запустить ее 1000 раз?





Ответ на:
комментарий
от vaborg

Ответ на:
комментарий
от vaborg


Ответ на:
комментарий
от vaborg

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Выделение памяти, ошибка сегментирования (2013)
- Форум Глупый вопрос по С (2013)
- Форум [C++] массивы и указатели (2010)
- Форум non-blocking write (2011)
- Форум Задачка с массивом строк на Си (2008)
- Форум Как определить массив (2003)
- Форум valgrind не ловит явную ошибку? (2007)
- Форум массив из файла в память =( (2005)
- Форум Тупняк и указатели 2 (2014)
- Форум Очистка памяти после создания двумерного «непрерывного в памяти» массива (2017)