Segmentation Fault podczas debugowania kodu - gdzie jest przyczyna problemu?

Odpowiedz Nowy wątek
2014-12-16 19:54
0

Witam nie jestem w stanie zmusić do działania wydawałoby się prostego programu, którego kod zamieszczam tutaj:

#include <iostream>
#include <fstream>
#include <string>
 
using namespace std;
 
ifstream data;
string line;
 
int main()
{
    data.open("dane.txt", ios::in);
    if (data.good() == true)
    {
 
        cout << "Otwarto dane.txt!" << endl;
        for (int i = 0; i <= 4999; i++)
        {
            getline(data,line);
 
        }
    }
    else
    {
        cout << "Blad! Nie mozna otworzyc dane.txt!" << endl;
    }
 
    //system("pause");
    return 0;
}
 

Korzystam z najnowszego Code::Blocks 13.12 z GCC 4.7.1 i za każdym razem kiedy staram się w debugerze podejrzeć zawartość mojego stringa line, dostaję Segmentation Fault. Nie bardzo wiem dlaczego tak się dzieje, tym bardziej, że w VS C++ Community wszystko gra.

Czy ktoś jest w stanie wytłumaczyć mi "łopatologicznie" przyczynę problemu?

edytowany 1x, ostatnio: Wazka260196, 2014-12-16 19:56

Pozostało 580 znaków

2014-12-16 20:03
0

Kod jest dobry, a masz tam na pewno te 5000 linii?

Pozostało 580 znaków

2014-12-16 20:06
0

Tak. Dokładnie 5000 linii i nie rozumiem tego zachowania. Jak mówiłem w VS wszystko gra, ale muszę używać C::B.

Edit1: Dodam jeszcze, że na początku w oknie debuggera jako wartość line gdb wyrzuca komunikat "Invalid number 0 of operations."

Edit2: Czyli mam rozumieć, że tutaj problemem jest sam debugger a nie mój kod?

edytowany 2x, ostatnio: Wazka260196, 2014-12-16 21:07

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0