Mnie też wydaje się czysty, ale prawie śpię na siedząco więc mogę się mylić Spróbuj jeszcze raz przebudować projekt (jeśli korzystasz z VC++ będzie to Ctrl+Alt+F7), czasami pomaga, sprawdź czy z innymi nazwami zmiennych też są błędy. No i nie wiem po co te cin.* po returnie, jeśli masz niepotrzebny kod a nie chcesz go usuwać bierzesz go w /* tutaj */ masz dzięki temu mniej problemów z organizacją.
Kod wydaje się ok, poza cin.sync() i cin.get() - wcześniej jest przecież return 0, wyjście z funkcji main, więc się nie wykonają. Inna sprawa, że jest to średnio mądre obejście sytuacji, gdy uruchamiać program z dwukliku konsola zamyka się po wykonaniu programu, no ale już mniejsza z tym.
W programie chodzi o to, że podaje się pow. w metrach kwadratowych, a on zamienia to na kwadrat i wylicza jego bok - jakoś tak
Spróbowałem jeszcze raz i dalej to samo. Dla mnie w kodzie jest wszystko jasne, kwestia tego, czy jest on uporządkowany to już sprawa osobista. Ale dla czego kompilator wywala błąd?
To cin.sync(); i cin.get(); chyba rzeczywiście niepotrzebne, ale czy wtedy program nie zamknie się od razu po pokazaniu wyniku? Może dać to przed return 0; ?
cin.sync() i cin.get() to współczesne przenośne rozwiązanie zatrzymania konsoli przed zamknięciem. conio.h to staroć z czasów DOSa, a system(“pause”) to uzależnienie od windowsa. Najlepiej żeby nie było takich zatrzymywaczy, a program byłby odpalany normalnie z konsoli.
Ogólnie kod poza tym że za returnem jest cokolwiek jest OK. VC widocznie ma jakieś widzimisię.
@barry06: nie tylko VS, ale też w każdym innym dzisiejszym IDE do C++ z debuggerem
Albo pisać w Code::Blocks, który uruchamia konsolę, a po zakończeniu wykonywania skompilowanego programu wyświetla informację na temat czasu działania aplikacji i czeka na enter
Wiem, ale autor wspomniał, że korzysta właśnie z VS. W tym przypadku jednak zatrzymywanie wyników programu to najmniejszy z problemów z którymi musi się zmierzyć autor…