Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

ich hab ein ähnliches Problem...

ich ich muss zum Primzahlenberechnenen C++ einen

Array initialisieren der sehr viele Elemente enthält

doch bei mir ist bei 100.000 Elementen Schluss

Ich hoffe ihr könnt mir ne Antwort geben

eine Sache noch mit Mehrdimensionalen Arrays funktioniert es auch nicht

Vielen Dank im Voraus

Geschrieben

kein .NET

ähm so:

class primzahl

{

public:

long zahl;

long stand;

};

int main()

{

primzahl prim[100000], prim2[100000];

war das die Antwort auf deine Frage?

Geschrieben

Ja, so wie du es anlegst wird der Speicher auf dem Stack angelegt welcher allerdings begrenzt ist.

Leg die mal dynamisch auf dem Heap an


primzahl *prim = new primzahl[100000][/PHP]

Dann sollte es gehen. Vergiss aber nicht den Speicher mit delete wieder freizugeben wenn du ihn nicht mehr brauchst ;)

  • 2 Monate später...
Geschrieben

Eine Frage: Macht es einen Unterschied, ob nun mit .Net programmiert wird oder nicht? Ich programmiere nämlich mit .Net.

Habe nämlich ein kleines Problem, wenn ich das "delete" aufrufe. Zuerst kriege ich beim Debuggen gesagt, dass eine Assertion fehlgeschlagen ist, und danach kommt die Meldung, dass ein "corruption of the heap" vorliegt.

Ich kann mir irgendwie noch nicht so ganz erklären, warum das beim delete kommt. denn wenn ich (vermutlich) vorher schon beim Schreiben den Speicher überscheiten sollte, dann würde ich doch an dieser Stelle den Fehler schon erwarten.

Naja, muss da wohl mal weitersuchen, woran das liegt. Aber Tipps und Ratschläge, wie das zu lösen ist, nehme ich jederzeit gerne an.

Gruß Kati82

Geschrieben

Moin.

Hört sich für mich irgendwie nach doppeltem Löschen oder falschen Arraygrößenangaben an.

So als Tip in den Raum... ;)

Geschrieben

Habe den Fehler mittlerweile gefunden. Ich befülle ja mein Array stückchenweise mein Array. Irgendwie habe ich mich da wohl beim Rücksetzen auf die Anfangsadresse ein wenig verrechnet.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...