ďťż

Ładny brzuch

Witam

Od jakiegoś tygodnia zaczynam naukę programowania w C++ wraz z kursem "Od zero do gier kodera". I teraz napotkałem następujący problem. (Z góry mówię ,że używam Visual C++ Express Edition .net 2008 ).

Mam następujący program:

// Arithmetic - proste działania matematyczne #include <iostream> #include <conio.h> #include <stdafx.h> void main() { int nLiczba1; std::cout << "Podaj pierwsza liczbe: "; std::cin >> nLiczba1; int nLiczba2; std::cout << "Podaj druga liczbe: "; std::cin >> nLiczba2; int nWynik = nLiczba1 + nLiczba2; std::cout << nLiczba1 << " + " << nLiczba2 << " = " << nWynik; getch(); }

Po skompilowaniu wyskakuje błąd 2857. Zupełnie nie wiem o co chodzi. Jest to oryginalny kod programu z kursu więc dziwne ,że nie działa jak należy.

Ktoś ma jakieś pomysły ?
Użytkownik queertin edytował ten post 28 grudzień 2009, 20:52


Wrzuciłam ten kod do Dev-c++ i mi pokazał, że nie ma takiej biblioteki stdafx.h, więc wyrzuciłam tę linijkę z kodu i wszystko dobrze działa. Może też tak spróbuj.

PS. Ja się nie dziwię, że jakieś kody z książek mogą nie chodzić. Też mam parę książek z listingami, które przepisuje i mi się nie kompiluje tak jak należy.

@down: Dev-C++ mi został z nauki informatyki z liceum :) ale jeszcze mam Visuala Studio 2008, ale powiem, że jak na razie, nie przepadam za nim :)

"stdafx.h" jest generowany przez VS podczas tworzenia projektu. To nie jest biblioteka. Dlatego kompilator nie potrafi go znaleźć.

Korzystasz z kursu internetowego, więc nie działający kod to nic dziwnego. Jak widać autor zapomniał napisać jak tworzy się projekty w VS (jeżeli w ogóle wspomniał, że pisał w tym IDE). W kursach internetowych ludzie można spotkać różne dziwne rzeczy i nabrać złych nawyków (mówię to na podstawie własnego doświadczenia ;)). Lepiej uczyć się z książek.

@katarina: przesiądź się na nowsze IDE ;)
Użytkownik Kozack edytował ten post 28 grudzień 2009, 21:37
A ma ktoś jakieś pomysły co do tego, jak zmodyfikować kod by działał poprawnie w Visual Studio 2008 ?




nie ma takiej biblioteki stdafx.h, więc wyrzuciłam tę linijkę z kodu i wszystko dobrze działa
Dostałeś już odpowiedź ;) Ten plik nie jest potrzebny.
Użytkownik Kozack edytował ten post 29 grudzień 2009, 12:52
Wyrzuciłem i dalej to samo... Ten sam błąd.

Chwila, wyrzuciłem z Source Files pliki tej biblioteki i po usunięciu jej (stdafx.h) wyskakuje błąd krytyczny 1010 mówiący ,że muszę mieć ta bibliotekę (?).
Teraz jak dodam, wyskakuje błąd 1083 "fatal error C1083: Cannot open precompiled header file: 'Debug\Program arytmetyczny.pch': No such file or directory". Wygląda na to ,że za dużo usunąłem...

@down

New > Project > Win 32 Console application > Console application (Zaznaczony był precompiled header... to chyba przez to )
Użytkownik JJ1417 edytował ten post 29 grudzień 2009, 15:16
A powiedz po kolei, jak włączałeś VS, żeby napisać ten program?

Tworząc projekt w VS wybierz opcję Empty project, a później dodaj nowy plik źródłowy. Wklej do niego kod usuwając z niego "stdafx.h".

Dałem pusty project i nie wiedziałem, co dalej,jednak drogą dedukcji doszłem do tego ,że poprzedni project miał C++ file, a ten go nie ma i trzeba utworzyć nowy (nie wiedziałem na początku gdzie wkleić kod), dałem "New Item" i C++ file, potem zrobiłem tak jak wy kazaliście i gotowe :)

Wielkie dzięki ! (Już byłem bliski odłożenia kursu na bok i wmówienia sobie ,że jest on na mnie za trudny :))

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •