Duplicar posible:
C programming, why does this large array declaration produce a segmentation fault?C tamaño máximo en el principal
Esta es mi primera vez aquí, así que lo siento si me romper algunas reglas o si esto ha sido respondida antes. Recientemente he hecho un programa de C en el que tuve una matriz de
char buff[NR][1024*1024];
que necesitaba NR = 128. Por lo tanto el programa Alocate 128MB. Esto fue en main(). Lo intenté en algunos sistemas con suficiente memoria sin errores en la compilación. En el tiempo de ejecución, recibí una falla de segmentación en todos los sistemas. Funcionó para NR = 7, pero no para 8. Moví ese código fuera de main, lo que lo hizo global. No se bloqueó ni siquiera por 128. ¿Alguien sabe por qué sucedió esto? El compilador fue GCC
Posible duplicado de la programación de [C, ¿por qué esta declaración de matriz grande produce una falla de segmentación?] (Http://stackoverflow.com/questions/3049934/c-programming-why-does-this-large-array-declaration -produce-a-segmentation-fault) –