Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

08.12.2010, 17:04

Problem mit Listing_1

Hallo zusammen!
Verwende für das erste Projekt Visual Studio 2010 Express und habe alles schön eingegeben also:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/*C++ für Spieleprogrammierer 
Listing 1.1
Es wird ein Begrüßungstext ausgegeben*/
//
#include <iostream>
using namespace std;

//Hauptprogramm
//
int main ()
{
cout <<"Hier kommt die Konkurenz!\n" ;
return 0;
}


Doch wenn ich dann Projektmappe erstellen drücke kommt unten:

C-/C++-Quelltext

1
2
3
4
5
6
1>------ Erstellen gestartet: Projekt: Listing_1, Konfiguration: Debug Win32 ------
1>  Listing_1.cpp
1>c:\dokumente und einstellungen\user\eigene dateien\visual studio 2010\projects\listing_1\listing_1.cpp(5): warning C4627: "#include <iostream>": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
1>          "StdAfx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
1>c:\dokumente und einstellungen\user\eigene dateien\visual studio 2010\projects\listing_1\listing_1.cpp(15): fatal error C1010: Unerwartetes Dateiende während der Suche nach dem vorkompilierten Header. Haben Sie möglicherweise vergessen, im Quellcode "#include "StdAfx.h"" einzufügen?
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========


Was mache ich falsch?

2

08.12.2010, 17:21

Du musst ein Leeres Projekt erstellen ;) Sprich einen Haken bei Leeres Projekt machen, bei dem Dialog beim Erstellen.

3

08.12.2010, 17:22

Jetzt habe ich

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/*C++ für Spieleprogrammierer 
Listing 1.1
Es wird ein Begrüßungstext ausgegeben*/
//
#include <iostream>
#include "StdAfx.h"
using namespace std;

//Hauptprogramm
//
int main ()
{
    cout << "Hier kommt die Konkurrenz!\n";
    return 0;
}


Und dann kommt als Fehler Meldung:

Quellcode

1
2
3
4
5
6
7
1>------ Erstellen gestartet: Projekt: Listing_1, Konfiguration: Release Win32 ------
1>  stdafx.cpp
1>  Listing_1.cpp
1>Listing_1.cpp(5): warning C4627: "#include <iostream>": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
1>          "StdAfx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
1>Listing_1.cpp(13): error C2065: 'cout': nichtdeklarierter Bezeichner
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

4

08.12.2010, 17:24

Ok ich wei´ß nicht genau wo ichd en Haken machen muss^^

5

08.12.2010, 17:40

wenn du ein neues projekt erstellst, musst du im zweiten fenster unter anwendungseinstellungen ein häckchen bei "Leeres Projekt" (Zusätzliche Optionen) machen

Edit: Und dann bei Quelldatein in deiner Projektmappe (Im normalfall links am bildschirm) per rechtsklick -> hinzufügen -> Neues Element deine main.cpp erstellen

6

08.12.2010, 18:09

Vielen dank. Jetzt gehts :D

7

09.12.2010, 16:32

Ok ich schreibe es gleich hier rein:
bei Listing 2.3 soll man die variablen mit

Quellcode

1
2
int Punkte = 10; 
Punkte = Punkte + 20;
ersetzen.
Nur stecke ich gerade wie man das am besten ersetzt...wie würdet ihr die "Normalen" Variablen in diesem Code ersetzen?

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/*C++ für Spieleprogrammierer 
Listing 1.1
Rechnen mit Variablen*/
//
#include <iostream>

using namespace std;

//Hauptprogramm
//
int main ()
{
    //Variablen
    int Bonuspunkte, Restzeit, Diamanten;
    int Zeitbonus, Diamantenbonus;
    int PunkteProDiamant, PunkteProSekunde;

    //Variablen initialisieren
    Restzeit= 12;
        Diamanten = 16;
        PunkteProDiamant = 30;
        PunkteProSekunde =15;

        //Bonus für Restzeit berechnen und ausgeben
        Zeitbonus = Restzeit + PunkteProSekunde;
        cout << "Zeitbonus: " << Zeitbonus << endl;
        //Bonus für Diamanten berechnen und ausgeben
        Diamantenbonus = Diamanten + PunkteProDiamant;
        cout << "Diamantenbonus: " << Diamantenbonus << endl;
        //Gesamtpunkte berechnen und ausgeben
        Bonuspunkte = Zeitbonus + Diamantenbonus;
        cout << "Gesamtpunkte: " << Bonuspunkte << endl;

        return 0;
}

8

09.12.2010, 17:09

Naja, du könntest zum Beispiel die Variablen gleich bei deiner deklaration definieren (initialisieren) ...
aber was genu du mit "ersetzten" meinst versteh ich nicht

9

10.12.2010, 17:40

Hm ich weiß nciht was in dem Buch steht ... von d.h. her jetzt mit vorbehalt geantwortet:
Es wird wohl um die Vermeidung von magic-numbers gehen, d.h. das Zahlen alleine nicht unbedingt selbsterklärend sind.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
int Bonuspunkte, Restzeit, Diamanten;
    int Zeitbonus, Diamantenbonus;
    int PunkteProDiamant, PunkteProSekunde;

    //Variablen initialisieren
    Restzeit= 12;
        Diamanten = 16;
        PunkteProDiamant = 30;
        PunkteProSekunde =15;
Pro ist hier wohl falsch, dann müsstest du ein * statt ein + später verwenden ;) ... Anlegen und initialisieren zu trennen ist in dem Fall eher negativ.
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

pepe1995

Frischling

Beiträge: 60

Wohnort: Warngau

Beruf: Schüler (10.)

  • Private Nachricht senden

10

12.12.2010, 18:32

Meinst du diesen Operator += ?
Damit könntest du dir ein wenig Schreibaufwand sparen


C-/C++-Quelltext

1
int punkte = 10;punkte += 20;



Dabei werden zur Variablen Punkte, die den Wert 10 hat, 20 dazuaddiert, sodass sie schließlich den Wert 30 hat
www.4story.de
ROCKT! ;)

Werbeanzeige