Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

ZIR

Frischling

  • »ZIR« ist der Autor dieses Themas
  • Private Nachricht senden

1

15.06.2010, 15:52

Tilemap aus Textdatei lesen

Ich hätte mal wieder ein Problem.
Unzwar wollte ich aus einer Textdatei eine Tilemap auslesen. Es funktioniert perfekt mit nur einer Zeile aber nun habe ich den Code so erweitert dass eine Map von 7*7 Elementen ausgelesen wird.
Nach dieser Erweiterung crasht das Programm aber immer. Ich habe es bereits im Debug Modus gestartet bloß leider werde ich daraus nicht schlau.
Hier ist mal der Code:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
#include <fstream>
#include <string>
#include <ctype.h>

using namespace std;

int main()
{
    string line;
    string::iterator i;
    int Line = 0, Column = 0;
    int Map[7][7];
    ifstream myfile ("File.txt");

    if (myfile.is_open() )
    {
        while (! myfile.eof() )
        {
            getline (myfile, line);
            for (i = line.begin(); i != line.end(); i++)
            {
                if (isdigit(*i) )
                {
                    Map[Line][Column] = (*i)-'0';
                    Column++;
                }
                
            }
Column = 0;
            Line++;
        }
        myfile.close ();
    }
    else 
        cout<<"Unable to open file"<<endl;

    for (int i = 0; i < Line-1; i++)
    {
        for (int j = 0; j < 7; j++)
        {
            cout<<Map[i][j];
        }
    }
    

    return 0;
}

Falls es irgendwem hilft der Debugger öffnet nach dem Crasher immer die Datei xutility und hat einen Pfeil auf die Funktion _Adopt.
Naja ich hoffe mir kann irgendwer helfen.

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »ZIR« (15.06.2010, 18:08)


TSS

Frischling

  • Private Nachricht senden

2

15.06.2010, 16:13

C-/C++-Quelltext

1
2
3
4
5
6
7
for (int i = 0; i < 7; i++)
    {
        for (int j = 0; j < 7; i++)
        {
            cout<<Map[i][j];
        }
}
Das sollte wohl eher j++ heißen in der inneren Schleife, oder?

ZIR

Frischling

  • »ZIR« ist der Autor dieses Themas
  • Private Nachricht senden

3

15.06.2010, 16:15

Ja das stimmt schon aber daran liegt es nicht es stürzt trotzdem ab, aber trotzdem danke.

4

15.06.2010, 16:30

Nicht jeder Fehler führt zum Absturz ! Korrigiers doch einfach, dann sparste dir nachher stundenlanges debuggen.

ZIR

Frischling

  • »ZIR« ist der Autor dieses Themas
  • Private Nachricht senden

5

15.06.2010, 16:34

Zitat

Nicht jeder Fehler führt zum Absturz ! Korrigiers doch einfach, dann sparste dir nachher stundenlanges debuggen.
Das habe ich bereits gemacht ansonsten könnte ich ja nicht sagen dass es daran nicht liegt.
Also ich habe nochmal ein bisschen rumprobiert mit zwei Linien geht es noch aber sobald die Datei drei Linien hat stürtzt es ab.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »ZIR« (15.06.2010, 18:07)


ZIR

Frischling

  • »ZIR« ist der Autor dieses Themas
  • Private Nachricht senden

6

15.06.2010, 18:37

Problem gelöst.
Ich hab nen bisschen rumprobiert und das Programm neu kompiliert und auf einmal ging es.

Werbeanzeige