C++ Erstes Programm, erstes Problem

Registriert
Okt. 2010
Beiträge
28
Erstes Programm, erstes Problem [gelöst, danke!]

Sehr geehrte Computer Base Nutzer,

Ich möchte gerne C++ erlernen und habe mir deshalb ein Buch namens: "C++ für Spieleprogrammierer" ausgeliehen. Nun wollte ich gerne die erste Übung machen und einfaches Programm das mir einen Text in der Console ausgeben soll erstellen. Hört sich einfach an. Dachte ich mir....

#include <iostream>

using namespace std;

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

So sieht das Programm aus. Und dieser Text steht darunter:

1>------ Erstellen gestartet: Projekt: C++ für Spieleprogrammierer, Konfiguration: Debug Win32 ------
1>Der Buildvorgang wurde am 05.02.2011 16:54:16 gestartet.
1>InitializeBuildStatus:
1> Aktualisieren des Timestamps von "Debug\C++ für Spieleprogrammierer.unsuccessfulbuild".
1>ManifestResourceCompile:
1> Alle Ausgaben sind aktuell.
1>LINK : error LNK2001: Nicht aufgelöstes externes Symbol "_mainCRTStartup".
1>d:\documents\visual studio 2010\Projects\C++ für Spieleprogrammierer\Debug\C++ für Spieleprogrammierer.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.
1>
1>Fehler beim Erstellen
1>
1>Verstrichene Zeit 00:00:00.26
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

Was genau möchte das Programm damit mitteilen, habe ich einen Fehler im Quellcode?
 
Zuletzt bearbeitet:
Wie hast du denn das Projekt erstellt? Der Code ist richtig so, funktioniert bei mir.
 
Versuch mal std::count
 
Fehler sehe ich auch keinen. Hast du Konsolenprojekt angelegt?
 
Ich habe folgendes gemacht: Datei -> Neu -> Projekt -> Win32Konsolenanwendung -> Name eingegeben, OK geklickt -> beim aufpoppendem Fenster auf weiter -> Haken bei leeres Projekt gesetzt -> Fertig stellen.

Dann habe ich ein neues Element hinzu gefügt unter Quelltext und den oben geposteten Text rein geschrieben und nun wundere ich mich wieso es nicht funktioniert.
 
Hallo,
Ich entnehme deinem Beitrag, dass du Visual Studio als Compiler benutzt.

Code:
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
Bedeutet, dass es einen Fehler gab und der Compiler seine Arbeit nicht abschließen konnte.

Der Fehler findet sich auch in der Ausgabe:
Code:
1>LINK : error LNK2001: Nicht aufgelöstes externes Symbol "_mainCRTStartup".

Du hast keine Fehler im QUellcode gemacht, sondern beim erstellen des Projekts.
So wies aussieht hast du eine CLRKonsolenanwendung gewählt, nimm eine Win32-Konsolenanwendung und es sollte laufen.

EDIT: hm genau gleichzeitig gepostet ;)
Haken bei leeres Projekt gesetzt
setz den mal nicht und kompilier es so wie es ist am Anfang. Möglicherweise ist auch was bei der Installation von VS schiefgelaufen.

Übrigens:
"C++ für Spieleprogrammierer"
Ist für den Anfang vielleicht etwas hoch angesetzt, ich kenne das Buch zwar nicht, aber Spiele zu programmieren klingt für den Einstieg sehr gewagt. Kannst ja erstmal einen Einsteigerkurs machen und dann mit deinem Buch fortfahren.
 
Zuletzt bearbeitet:
Stand im Buch, dass du Visual Studio verwenden sollst?

Das ist nicht nur dieser Code, der Kompiliert wird, sondern noch viel mehr (das du aber nicht siehst).
Kann es sein, dass du einen falschen gewählt hast (etwa "CLR Konsolenanwendung" o.ä.)?
 
File => New => Project => Visual C++ => Win32 => Win32 Console Application

Application Type: Console
Alle Hackerl rausnehmen

Ich weiß aber nicht, ob für den C++ Kick-Off Visual C++ die richtige Wahl ist. GCC im Texteditor bzw. Netbeans wäre hier einfacher und verständlicher.
 
Dem Buch liegt eine CD mit Visual Studio 2008 Express Edition, aber ich habe von der Fachhochschule ein Visual Studio 2010 Ultimate gestellt bekommen. Daher dachte ich das wird ja wohl das gleich sein nur in neuer. Und ich wollte auch nicht unbedingt 2 Versionen vom gleichen Programm installieren nachher stören diese sich gegenseitig.

Liegt es wirklich daran? Wie muss ich es denn abändern damit es von Visual Studio 2010 angenommen wird?

Wollte gerne das gleiche Programm benutzen welches wir auch im Studium benutzen.

Auch habe ich die ganze Projektmappe erneut erstellt und ganz genau drauf geachtet Win32 Konsolenanwendung zu wählen. Das Problem bleibt.
 
Zuletzt bearbeitet:
Es muss ja nicht unbedingt die Express Edition sein.

Wie RobaL schon schreibt, GCC + Texteditor funktioniert immer. Dann gibt's zwar keine IDE, dafür lernt man aber auch viel mehr von C/C++.
 
Ich habe das Problem gefunden, ich habe nun noch eine Projektmappe erstellt und alles test genannt und da ging alles ohne Probleme, daher schlussfolgere ich das der Name der Projektmappe "C++ für Spieleprogrammierer" das Problem darstellte. Das finde ich nun verwirrend. Er kompiliert doch nicht die Namen?
 
klingt fast so als würde der linker einfach die pfad angabe nich verstehen. vlt. liegts an dem +.
 
Es liegt defintiv am Namen, ich habe es nun "CplusplusfuerSpieleprogrammierer" genannt und das geht. "Cplusplus fuer Spieleprogrammierer" wollte er aber auch nicht als Namen akzeptieren, vermutlich mag er keine Leerzeichen. Mein erster Gedanke war auch vielleicht sind die + Zeichen das Problem oder das ü.

Danke für eure Hilfe, ich hätte weiter die 6 Zeilen gelesen und mit dem Buch verglichen und wäre nie auf die Idee gekommen, das es an so etwas trivialem liegen könnte.
 
Kann sein, dass die Sonderzeichen (Leerzeichen und insb. Pluszeichen) das Problem verursachen.
 
Du sollst niemals Sonderzeichen in den Dateinamen verwenden. Niemals! Keine Umlaute, keine Plus, kein ß.
Buchstaben, Zahlen und als höchste der Gefühle "_"-Zeichen. Alles anderes kann in einem Kompilierfiasko enden :)

P.S:
Das Buch ist, falls man alles aufmerksam liest, top. Bietet sehr schnelles Einstieg in C++ auf spielerischer Art und Weise. Nur Heap und Stack wird etwas umständlich erklärt.
Aber das kann man auch im Internet nachlesen. Sonst Viel Spaß mit dem Buch und C++
 
Zuletzt bearbeitet:
Zurück
Oben