perror(fileName.c_str());
system("PAUSE");
exit(1);
Kiedy std::ifstream sfailuje, nie ustawia zmiennej std::errno. To mechanizm z C i nie jest on najlepszy do stosowania w C++, który posiada system wyjątków. Tak samo - używanie funkcji exit jest niewskazane - to funkcja projektowana do kończenia programów C - w C++ nie pozwala na wywołanie destruktorów obiektów, które kończą życie razem z programem. Staraj się tak sterować przepływem sterowania w programie, żeby kończyć działanie z funkcji main przez zwykły return.
Wracając do Twojego problemu - jego rozwiązaniem może być ustawienie katalogu roboczego na katalog, w którym trzymasz plik "poziom.txt" lub skopiowanie tego pliku do lokalizacji, w której buduje się plik wykonywalny, czyli u Ciebie gdzieś w katalogu "Debug".