honk611 Geschrieben 13. November 2010 Geschrieben 13. November 2010 Hallo, Zunächst einmal möchte ich mich entschuldigen, wenn dieser Beitrag in dem falschen Forum gepostet worden ist, aber ich bin neu hier und habe keinen geeigneteren Ort gefunden. Ich habe mir ein Buch zum lernen von C++ gekauft, doch schon beim ersten programm stieß ich auf Hindernisse. Ich möchte folgendes Programm haben: #include <iostream> using namespace std; int main() { cout << "Dies wird in \n2 Zeilen gedruckt!"; cout << "\nFuenf + elf = " << 5+11 << "\n"; return 0; } Jedoch bekomme ich von Microsoft Visual C++ Express, dass ich als IDE benutze, folgende fehlermeldung: 1>------ Erstellen gestartet: Projekt: bspl0001, Konfiguration: Debug Win32 ------ 1> bspl0001.cpp 1>bspl0001.cpp(1): 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 ========== Doch bevor diese fehlermeldung kommt, sagt mir die IDE, das Projekt sei veraltet. Was hat es damit auf sich? Ich hoffe jemand kann mir helfen. MfG honk611
Klotzkopp Geschrieben 13. November 2010 Geschrieben 13. November 2010 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?Hast du möglicherweise vergessen, im Quellcode "#include "StdAfx.h"" einzufügen? In deinen Projekteinstellungen sind vorkompilierte Header eingestellt. Stell das entweder ab, oder füge als erste Zeile in deinem Programm #include "StdAfx.h" ein. Doch bevor diese fehlermeldung kommt, sagt mir die IDE, das Projekt sei veraltet. Was hat es damit auf sich?Das bedeutet, dass die letzte Änderung am Quellcode nach dem letzten Erstellen des Programms erfolgt ist. Das Programm spiegelt also nicht die letzten Codeänderungen wieder, ist "veraltet". Das ist also bei Änderungen am Quellcode normal, zumindest bis man das Programm wieder neu erstellt.
honk611 Geschrieben 13. November 2010 Autor Geschrieben 13. November 2010 Hast du möglicherweise vergessen, im Quellcode "#include "StdAfx.h"" einzufügen? Davon stand eigentlich nichts im Tutorial. Ich war mich nicht sicher, ob Microsoft Visual C++ iostream überhaupt kennt.
honk611 Geschrieben 13. November 2010 Autor Geschrieben 13. November 2010 In deinen Projekteinstellungen sind vorkompilierte Header eingestellt. Stell das entweder ab, oder füge als erste Zeile in deinem Programm #include "StdAfx.h" ein. Wie stell ich die vorkompilierter Header denn genau ab?
Klotzkopp Geschrieben 13. November 2010 Geschrieben 13. November 2010 Ich hab's hier nur auf Englisch, weil ich die deutsche Übersetzung von Visual Studio furchtbar finde: In den Projekteigenschaften unter C/C++ -> Precompiler Headers -> Precompiled Header auf "Not Using Precompiled Headers" stellen.
lilith2k3 Geschrieben 13. November 2010 Geschrieben 13. November 2010 alternativ einen anderen Compiler benutzen
honk611 Geschrieben 14. November 2010 Autor Geschrieben 14. November 2010 (bearbeitet) Danke erstmal, es hat nun geklappt, nachdem ich die Header deaktiviert habe. Doch sofort machte sich ein neues Problem bemerkbar. Das Programm habe ich als CLR-Konsolenanwendung geschrieben. Demnach öffnet sich das programm auch in der Konsole, doch unmittelbar nach der Ausführung des Programmes blinkt die konsole nur kurz auf und schließt sich sofort danach wieder. Es wird zwar das Gewollte ausgegeben, doch ist es nur für den bruchteil einer Sekunde sichtbar. Woran kann das liegen? Bearbeitet 14. November 2010 von honk611
Klotzkopp Geschrieben 14. November 2010 Geschrieben 14. November 2010 aber wenn ich die Vorkompilierten Header ausschalte, kann ich dann iostream benutzen? Ist das nicht auch ein solcher Header?Nein, <iostream> ist ein C++-Standardheader. Vorkompilierte Header und <iostream> haben nichts miteinander zu tun. Du kannst <iostream> mit und ohne vorkompilierte Header benutzen.
Klotzkopp Geschrieben 14. November 2010 Geschrieben 14. November 2010 Es wird zwar das Gewollte ausgegeben, doch ist es nur für den bruchteil einer Sekunde sichtbar. Woran kann das liegen?Das ist normal. Wenn du ein Konsolenprogramm nicht aus der Konsole (also durch Eingabe des Programmnamens) startest, öffnet sich eine neue Konsole für die Ausführung. Diese Konsole schließt sich aber auch sofort wieder, wenn das Programm beendet ist. Wenn du das nicht willst, musst du verhindern, dass sich dein Programm sofort beendet, z.B. indem du auf eine Eingabe wartest.
cappi Geschrieben 15. November 2010 Geschrieben 15. November 2010 (bearbeitet) Alternativ einfach Strg+F5 zum kompilieren drücken. Bearbeitet 15. November 2010 von cappi
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden