cout erzeugt compiler-fehler



  • robak schrieb:

    auch wenn ich die ganze bibliothek reinlade ( using namespace std; ) gehts nich
    weis einer was da falsch ist??

    Nein, mit #include lädst du die ganze Bibliothek, mit using namespace blabla öffnest du den Namensraum blabla, damit du nicht jedes mal blabla:: vor dem Zugriff auf einen Funktionsaufruf/Objektbestandteil/Object oder einer Variable die sich in dem Namensraum befindest schreiben musst.

    MfG Max



  • axo, nja gut zu wissen.

    ich hab die gcc version 3.3.2
    und mit g++ gehts auch nich
    ich hab aber auch schon versucht gcc upzudaten, hilft alles nix

    @Master_Max

    cin.get(); // dann bleibt auch die Konsole offen

    das geht auch einfacher
    #include <conio.h>

    getch();

    hat aber den selben effekt 😉



  • mit iostream.h gehts aer der compiler gibt ne warnung aus dess die bibliothek veraltet ist.
    wie heisst denn die neuere bibliothek die ich anstatt iostream.h benutzten soll?

    thx schonmal für alle post!! 😉



  • Kannst du den ganzen code mit allen includen hier schreiben? aber eine minimale die Feheler produziert 🙂



  • robak schrieb:

    #include <conio.h>

    getch();

    Ist aber kein Standard, deswegen würd ich cin.get() vorziehen.

    wie heisst denn die neuere bibliothek die ich anstatt iostream.h benutzten soll?

    iostream.

    Kannst du den ganzen code mit allen includen hier schreiben?

    Würde ich auch vorschlagen, hört sich schon alles sehr suspekt an.



  • ok mach ich,

    hier ist der komplette code:

    #include <iostream.h>
    using namespace std;
    
    int main()
    {
        int a=0;
        cout <<endl <<a <<endl;
    return 0;
    }
    

    das ist alles, EXTREM simples prog ich weiß

    hier noch was der compiler sagt:

    g++ -o prog prog.cpp 
    
    In file included from /usr/lib/gcc-lib/i486-pc-linux-gnu/3.3.2/include/g++v3/backward/iostream.h:31, from prog.cpp:1:
    /usr/lib/gcc-lib/i486-pc-linux-gnu/3.3.2/include/g++-v3/backward/backward_warning.h:32:2:
    warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standart. Examples include substituting the <X> header of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated.
    

    ich hoffe das hilft etwas



  • Du hast das Problem doch schon treffend beschrieben:

    iostream gibt es nich

    Also beseitige das Problem indem du den Compiler komplett installierst, dann gibt es auch keine Warnings mehr.



  • hab gentoo linux und hab schon g++ installiert bzw upgedatet

    oder wo bekomme ich denn noch das komplette g++ packet mit allem drum und dran?



  • iostream.h funktioniert bei mir auch nicht mit using namespace std zusammen, aber einfach weil er in iostream.h keinen namespace std findet.
    Und wenn er das hier:

    #include <iostream>
    using namespace std;
    
    int main()
    {
        int a=0;
        cout <<endl <<a <<endl;
    return 0;
    }
    

    Bei dir nicht übersetzt, dann kann bei dir wirklich was nicht in Ordung sein.



  • Das ist jetzt viel besser 🙂
    Ich habe compiler gcc 3.2 und 2.9 auf meinem PC. gcc 2.9 sagt nicht shclechtes ueber iostream.h. aber gcc 3.2 produziert die derselbe Feheler mit iostream.h wie dein Compiler. Mit iostream ist es Ok. iostream.h ist obsolete. Denn sollst du einfach iostream benutzen.


Anmelden zum Antworten