zu große Matrix?

m-a-g

Grünschnabel
Hallo,
ich habe ein Problem mit der Größe meiner Matrix,
sobald ich über 100x100 gehe bricht das Programm ab, da es angeblich einen Fehler verursacht hat. Hier ein kleiner Auszug meines Programmes:
Code:
long double oberflaechen_matrix[(anzahl_elemente_pro_kante-1)][(anzahl_elemente_pro_kante-1)]; 
for (int i=0;i<anzahl_elemente_pro_kante;i++)
	{
		for (int j=0;j<anzahl_elemente_pro_kante;j++)
		{
			oberflaechen_matrix[i][j]=0.0;
		}
	}
	
	FILE *Out;
	fopen_s (&Out,"oberflaechen_matrix.txt", "w");
	for (int zeile=0;zeile<anzahl_elemente_pro_kante;zeile++)
	{
		for (int spalte=0;spalte<anzahl_elemente_pro_kante;spalte++)
		{
			fprintf (Out,"%.5f",oberflaechen_matrix[zeile][spalte]);
			fprintf (Out,"\t");
		}
		fprintf(Out,"\n");
}


Wie ihr seht, soll dieser Teil erstmal nichts weiter machen, als die ganze Matrix mit Nullen zu füllen und dann in einer Datei niederschreiben.
Ziel des Programms ist eine Matrix (5000x5000) [wenn das geht] wo Berechnungen zu einer Oberfläche untergebracht sind. Dabei sollen diese 5000x5000 Elemente einem Auszug der Oberfläche entsprechen.

Vielen Dank für eure Hilfe
 
Hallo,

wenn die anzahl_elemente_pro_kante bei dir == 100,
dann ist die Deklaration deiner Matrix falsch

deshalb greifst du in der Zählschleife auf Speicherbereich außerhalb deiner Matrix

Code:
long doubleberflaechen_matrix[anzahl_elemente_pro_kante][anzahl_elemente_pro_kante];
 
Zurück