Welche Entwicklungsplatform?



  • Also mein Programm wäre:
    #include <iostream>
    using namespace std;

    int main()
    {
    while(true)
    {
    cout << "3";
    }
    }

    Genutzt in Visual Studio, weil mir das als einzige Umgebung keinen Fehler vor der Ausführung des Programms gibt. Alle anderen Beschweren sich. Eclipse Beispielsweise über unresolved inclusion. Beim ausführen findet er die Binary nicht. Visual Studio beschwert sich nicht, aber beim ausführen springt nur kurz ein cmd und 1-2 andere Fenster auf und nichts weiter passiert. Was immerhin schon besser ist als das was ich beim schreiben des Themas hatte, nämlich gleichfalls einen Fehler.

    Edit: probiert habe ich schon andere Dateinen zu einzubinden. Von iostream.h bis istream.cpp.

    Eine weitere Frage: Mein Buch ist von 2000, was ich allerdings erst heute gemerkt hab^^. Ich werde mir ein neues besorgen müssen, da z.B. using namespace in dem Buch keine Erwähnung findet. Wie alt darf den ein Buch sein, damit es immer noch die aktuelle c++ Version behandelt?



  • Ein Buch für aktuelles C++ sollte so von 2013 oder 2014 sein. 😉 Ansonsten guck mal hier in die FAQ, der C++ Primer ist der Standardtipp.



  • Von 2013/14 finde ich leider keins. Hättest du einen Link? Und bei der FAQ fehlt das Datum. Ich kann davon ausgehen das die Bücher aktuell sind?



  • 2013/2014 war ein Scherz 😉

    Ich kann dir als Buch "Der C++ Programmierer" empfehlen, habe ich mir jetzt auch gekauft und bis jetzt keine Probleme 😉

    Das Problem mit "aktueller C++ Version" ist, dass der neuste Standard von 2011 ist (C++11) und daher 1. kaum in Büchern benutzt wird (einige gehen jedoch auf ein paar Eigenschaften ein) und das kann noch bis 2013/2014 dauern bis der wirklich benutzt wird.
    Und 2., weil der Standard noch recht neu ist, wird er auch kaum von Compilern unterstützt, oder nur teilweise.

    MfG



  • Sone schrieb:

    Parser ist Teil des Compilers. Der gehört nur in die lexikalische Analyse.

    Der Parser macht die syntaktische, der Lexer die lexikalische Analyse. Und selbstverständlich sind Lexer und Parser wesentliche Tools bei der Fehlererkennung zum Zeitpunkt der Codeeingabe.
    Kannst Du bitte, bitte endlich schweigen bei Themen, von denen Du nichts verstehst?



  • Den Scherz hab ich schon gesehen 🤡
    Dadurch das keiner mich auf einen dämlichen Fehler hinweist kann ich wohl davon ausgehen das am Programm nichts falsch ist. Würde jemand einen Schus ins Blaue reskieren und raten woran es liegen könnte? Eine weitere Frage: Kann ich bei Visual Studio eine Autovervollständigung von Klammern einstellen? Also das wenn ich eine Klammer öffne sich eine schließt. Also z.b wenn ich ( schreibe tippt er mir (). Und wen ich { schreibe, macht er mir die Klammer 2 zeilen tiefer wieder zu. Wenn ja, wie? In den Optionen hab ich nicht gefunden.

    Edit: Ich hab zwar nichts geändert aber jetzt funktioniert iostream plötzlich.



  • Neo234 schrieb:

    Edit: Ich hab zwar nichts geändert aber jetzt funktioniert iostream plötzlich.

    Unter iostream meinst du gerade den Standardbibliotheks-Header, oder? Also <iostream> ? (s gibt ja noch std::iostream ).

    Ein korrektes Hallo Welt Programm sieht bspw. so aus:

    #include <iostream>
    
    int main()
    {
        std::cout << "Hallo Alter! \n";
    }
    

    Deins

    #include <iostream> 
    using namespace std; 
    
    int main() 
    { 
    while(true) 
    { 
    cout << "3"; 
    } 
    }
    

    wird zwar kompiliert, ist aber eine Endlosschleife.
    Wenn bei dir dein Programm aber nicht kompliert, weil der Header nicht gefunden wird, liegt es wohl am Compiler oder den Einstellungen.

    Autovervollstaendigung der Klammern ist bei Codeblocks btw leicht einstellbar :p 😃



  • ja ich meine den Standard-header. Die Endlosschleife ist bewusst eingestellt, damit das cmd nicht nach einer Millisekunde wieder zu geht. Und wo stelle ich die Autovervolständigung ein? Ich finde das nicht. Und ich habe gründlich gesucht.



  • Neo234 schrieb:

    Und wo stelle ich die Autovervolständigung ein? Ich finde das nicht. Und ich habe gründlich gesucht.

    Visual Studio bietet leider keine Autovervollständigung. Daher nutzt man Visual Studio bzgl. C++ eigentlich immer in Kombination mit Visual Assist X.



  • Neo234 schrieb:

    ja ich meine den Standard-header. Die Endlosschleife ist bewusst eingestellt, damit das cmd nicht nach einer Millisekunde wieder zu geht.

    dazu koennte man aber ganz einfach

    std::cin.get();
    

    schreiben 😉

    Codeblocks hat btw einen console_runner, der automatisch stoppt.


Anmelden zum Antworten