Segmentation Fault podczas debugowania kodu - gdzie jest przyczyna problemu?

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?

0

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

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?

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