Strona 1 z 1
[C++][spoj] - Odwrotna notacja polska
: 11 kwie 2009, o 11:05
autor: spammer
Siemka.
Mam problem z takim jednym zadankiem ze spoja - .
Nie wiem na prawdę co jest z nim nie tak. 3 przykładowe testy przechodzi mi elegancko a jak wrzucę do sprawdzenia to wyskakuje błąd: runtime error (SIGSEGV).
Niżej zamieszczam kod.....
I z góry dziękuję za pomoc
[C++][spoj] - Odwrotna notacja polska
: 11 kwie 2009, o 15:57
autor: soku11
Nie chce mi sie analizowac calego kodu, ale widzac ze korzystasz z std::stack i otrzymujac SIGSEGV mozna wywnioskowac, ze poprostu gdzies czytasz spod NULL-a.
Jak mozesz, to daj dane ktore powoduja blad, a najlepiej przesledz dzialanie programu debuggerem.
Pozdrawiam.
[C++][spoj] - Odwrotna notacja polska
: 11 kwie 2009, o 18:04
autor: spammer
Przeleciałem go debuggerem i rzeczywiście jest coś nie tak.
Dla przykładowego wyrażenia
\(\displaystyle{ (a+b)}\) normalnie wykonuje te pętle wszystkie wypisuje
\(\displaystyle{ a}\), następnie leci po raz kolejny i coś mu się staje na linijce
w tym ostatnim else if. Obok w okienku odpluskiwacza ma coś takiego:
Kod: Zaznacz cały
A.push=&std::stack<<char, std::deque, std::allocator<char>>>::push(char const&)
[C++][spoj] - Odwrotna notacja polska
: 11 kwie 2009, o 19:23
autor: soku11
Hmpf... Przekopiowalem program i uruchomilem z wyrazeniem in: 1 (a+b) i wszystko sie wykonalo. Debugger rowniez przeszedl wszystko normalnie (krok po kroku). Wyslij moze screen z debuggerem i stanem zmiennych.
Pozdrawiam.
[C++][spoj] - Odwrotna notacja polska
: 11 kwie 2009, o 19:27
autor: spammer
Uuuuups xD U mnie też poszło ok, tylko po prostu pierwszy raz debuggowałem i myślałem, że jak jakiś pliczek z biblioteką mi się otworzy, to jakiś błąd ale jak poklikałem dalej to rzeczywiście ok. Sorki.......