Anfängerproblem: Hallo Welt.cpp



  • Ich wollte mal mit C++ anfangen und hab mir ein Buch ausgeliehen. Darin kommt der folgende Code vor:

    #include <iostream.h>
    
    int main()
    {
    	cout << "Hello World!\n";
    	return 0;
    
    }
    

    Nur meldet bei mir Visual C++ folgenden Fehler:

    fatal error C1010: Unerwartetes Dateiende waehrend der Suche nach der Direktive fuer die vorkompilierte Header-Datei

    Woran liegt das?

    Noch weitere Fragen:
    Wie kann ich die Zeilennummern-Ansicht einschalten, so dass ich immer die Zeilennummern sehe.
    Ist das normal, dass der debugger keine Zeilennummern zurückgibt?



  • du kannst nen doppelklick auf den fehler machen, dann wird der eintrag markiert.

    klingt für mich, als wenns mit der "iostream.h" n problem gibt.

    *[msdn]
    Schwerwiegender Fehler C1010
    Unerwartetes Dateiende während der Suche nach der Direktive für die vorkompilierte Header-Datei

    Eine vorkompilierte Header-Datei wurde angegeben; sie enthält aber keine Direktive für vorkompilierte Header-Dateien.

    Dieser Fehler kann auftreten, wenn eine fehlerhafte Datei als Header-Datei angegeben wird oder durch Angeben einer Include-Datei mit der Befehlszeilenoption /Yu (Verwenden einer vorkompilierten Header-Datei), die in der Quelldatei nicht als Include-Datei angegeben ist.[/msdn]*

    wie du den fehler wegbekommst weiss ich leider nicht.



  • diese fragen gehoert in das forum c++ oder ansi-c.
    aber zu deiner frage: hast du nen consolenprojekt erstellt oder ne win32 anwendung ?



  • versuch mal folgenden Code

    #include <iostream.h>
    int main ()
    {
    cout <<"Hello World!">>

    }

    ohne return 0 und \n

    wenn anders, dann probiers mit return 0 aber ohne \n.....



  • Ich habe ein Konsolenprojekt erstellt

    @candyman2000
    Mit deinem Code funktioniert es leider auch nicht, VC++ selber bietet folgenden Code an, der auch funktioniert:

    #include <stdafx.h>
    
    int main()
    {
    	printf("Hallo Welt!\n");
    	return 0;
    }
    

    Finde ich aber nicht so gut, da ich mit dem Buch C++ lernen wollte und es ja theoretisch funktionieren sollte.
    In der MSDN steht aber, dass für den Befehl printf die stdio.h Bibliothek reichen sollte. Wenn ich aber nur diese Include funktioniert es auch nicht.



  • lege bitte ein leeres konsolenprojekt an OHNE mfc unterstützung.
    füge dann per hand unter datei->hizufügen eine .cpp datei (quellcodedatei) hinzu.

    tippe dann bitte einen korrekten code:

    #include <iostream>
    using namespace std;
    

    denn die iostream.h ist veraltet.

    viel spaß



  • also ich kann nur auf Einfügen -> Klasse hinzufügen klicken, unter Datei gibts bei mir sowas nicht.
    Wenn ich das tue, wird eine überklasse erstellt, in der code eingefügt wird und nachher in einer anderen Klasse automatisch included wird.

    Es kommt immer noch der gleiche Fehler, auch wenn iostream include



  • probier mal so
    erstell dir einen neuen ordner und da drin erstellst du ein neues textfile...
    das benennst du um in test.cpp...
    dann klickst du da doppelt drauf und visual studio sollte den spass öffnen..

    dann packst du da das rein was elise dir geschrieben hat und klickst auf compilieren... die ganzen abfragen mit projekterstellen einfach alle auf ok klicken und dann sollte das auch funktionieren...



  • Danke so funktionierts jetzt 🙂

    Kapier zwar nicht ganz wieso, weil doch alles noch gleich ist, aber hauptsache es geht 🙂



  • Leider stellt der Wizard bei neuanlage des Projektes aktive vorkompilierte Header ein, und kommt in Folge dann mit seiner selbst erstellten Vorlage nicht zurecht: einfach die Option vorkompilierte Header deaktivieren.



  • hmm sama, was glaubt ihr eigentlich was in der stdafx.h bei einem C++ Konsolenprojekt drin ist ? Also das folgende sollte normal funzen... also wenn man mit dem app wizard nen proj erstellt..

    #include "stdafx.h"
    
    int main(void)
    {
        std::cout << "Hallo Welt!" << std::endl;
        return 0;
    }
    

    wobei das ganze hier so viel mit MFC zu tun hat, wie nen Apfel und ne Birne! 😛



  • (D)Evil schrieb:

    hmm sama, was glaubt ihr eigentlich was in der stdafx.h bei einem C++ Konsolenprojekt drin ist ?
    ...

    wobei das ganze hier so viel mit MFC zu tun hat, wie nen Apfel und ne Birne! 😛

    Kann man sich ankucken

    Und den stdafx Kram gibts afaik nur beim Visual Studio, also passts doch ins (Visual C++) Forum. Was auch immer Visual C++ ist.



  • ARG! Microsoft Foundation Class != Microsoft Visual C++ ...

    das eine ist eine Lib und das andere eine Anwendung -.- Davon mal abgesehn das du auch einfach die Include die in der stdafx.h sind in deine datei kopieren... bewirgt das selbe -.-


Anmelden zum Antworten