C-Strings vergleichen



  • Nachschlag:

    C++ von A bis Z, 3.2.1 schrieb:

    namespace meinBereich {
        int iwert;
        float fwert;
        // Definition von funktion()
        void funktion ( void ) {
         // Anweisungen von funktion()
      }
      // Definition von eineKlasse
      class eineKlasse {
          // Anweisungen für eineKlasse
      }
    }
    
    namespace meinBereich {
       int iwert;
       float fwert;
       // Deklaration von funktion()
       void funktion ( void );
       // Deklaration von eineKlasse
       class eineKlasse;
    }
    // Definition von funktion()
    void meinBereich::funktion( void ) {
       // Anweisungen von funktion()
    }
    // Definition von eineKlasse
    class meinBereich::eineKlasse {
       // Anweisungen für eineKlasse
    }
    
    namespace meinBereich {
          int iwert;
          float fwert;
          // Deklaration von funktion()
          void funktion ( void );
          // Deklaration von eineKlasse
          class eineKlasse;
      }
      // Erneut im Namensbereich meinBereich
      namespace meinBereich {
          // Definition von meinBereich::funktion( void )
          void funktion( void ) {
              // Anweisungen von funktion()
          }
      }
      // Definition von eineKlasse
      class meinBereich::eineKlasse {
          // Anweisungen für eineKlasse
      }
    

    C++ von A bis Z, 3.2.6 schrieb:

    namespace neuerName alterName;
    
    namespace einBereich ersterBereich::ersterBereich_innen;
    

    C++ von A bis Z, 3.3.1 schrieb:

    extern "C" typ funktion( parameter );
    

    Damit teilen Sie dem C++-Compiler mit, dass die Funktion »funktion()« mit
    einem C-Compiler übersetzt wurde.



  • Michael E. schrieb:

    seldon schrieb:

    Edit vom gemeinen Volkard: konkrete Fehlermeldungen weggemacht und nur die Anzahl gelassen.

    Wollte mir schon ein Bookmark machen für die nächsten 20 uneinsichtigen Wolf-Opfer 😞

    Umpf, ja, da gibts ärmere Leute auf der Welt, um die Du Dich gerne kümmern kannst.

    Vllt. wollt Ihr mal ein Buch nennen, was Eurer Meinung nach das genau Gegenteil zu dem von J.W. ist bzw. das, das Ihr einfach empfehlen würdet?



  • Mit Entschuldigung an Volkard. Lass es ne Stunde stehen oder so, damit er sich das durchlesen kann, dann kann das aus dem selben Grund gern den Weg der vorherigen Jauchebrocken gehen.



  • seldon schrieb:

    C++ von A bis Z, 3.3.1 schrieb:

    extern "C" typ funktion( parameter );
    

    Damit teilen Sie dem C++-Compiler mit, dass die Funktion »funktion()« mit
    einem C-Compiler übersetzt wurde.

    Der ist gut 🤡



  • Felixxx schrieb:

    Vllt. wollt Ihr mal ein Buch nennen, was Eurer Meinung nach das genau Gegenteil zu dem von J.W. ist bzw. das, das Ihr einfach empfehlen würdet?

    Ich empfehle dann mal den Breymann.



  • Felixxx schrieb:

    Vllt. wollt Ihr mal ein Buch nennen, was Eurer Meinung nach das genau Gegenteil zu dem von J.W. ist bzw. das, das Ihr einfach empfehlen würdet?

    Der C++ Primer (Stanley B. Lippman, Barbara E. Moo, Josee Lajoie) ist ein gutes Einsteigerbuch, und ich habe gute Dinge über Accelerated C++ (Andrew Koenig, Barbara E. Moo) gehört. Als weiterführende Lektüre bietet sich Effective C++ (Scott Meyers) an.



  • #include <iostream.h>
    void main()
    {
    // Dies ist das Hello-World-Programm
    cout<<"Hello, world!"<<endl;
    };

    Dieses kleine Programm schreibt "Hello, world!" (ohne die Anführungszeichen) auf den Bildschirm und setzt den Cursor auf den Beginn der nächsten Bildschirmzeile.

    -> .h ? std:: ?

    Zu den BÜchern: Werde ich mal anschauen



  • Felixxx: Ohne zu sagen, aus welchem Buch das stammt, machts nur halb so viel Spaß 😉



  • Felixxx schrieb:

    -> .h ? std:: ?

    Das war vor 11 Jahren noch keine Schande.



  • Michael E. schrieb:

    Felixxx: Ohne zu sagen, aus welchem Buch das stammt, machts nur halb so viel Spaß 😉

    Das ist aus http://www2.fh-augsburg.de/informatik/vorlesungen/XX/c_cplus/tutorial/henkel/Hello_world.html
    Ein Gegenangriff, so nennt man das wohl.



  • Felixxx schrieb:

    #include <iostream.h>
    void main()
    {
    // Dies ist das Hello-World-Programm
    cout<<"Hello, world!"<<endl;
    };

    Dieses kleine Programm schreibt "Hello, world!" (ohne die Anführungszeichen) auf den Bildschirm und setzt den Cursor auf den Beginn der nächsten Bildschirmzeile.

    Zusatzaufgabe: Abgesehen von der Verwendung des alten Nicht-Standard-Headers, was ist an diesem Programm noch falsch? Ich sehe noch zwei Sachen.



  • Richtig, so ist es auch keine Schande, wenn in irgendwelchen Beta Phasen von Büchern die warsch. auch nur online released worden sind Fehler drinnen sind.
    Außerdem gibts in jedem Buch Fehler.



  • volkard schrieb:

    Felixxx schrieb:

    #include <iostream.h>
    void main()
    {
    // Dies ist das Hello-World-Programm
    cout<<"Hello, world!"<<endl;
    };

    Dieses kleine Programm schreibt "Hello, world!" (ohne die Anführungszeichen) auf den Bildschirm und setzt den Cursor auf den Beginn der nächsten Bildschirmzeile.

    Zusatzaufgabe: Abgesehen von der Verwendung des alten Nicht-Standard-Headers, was ist an diesem Programm noch falsch? Ich sehe noch zwei Sachen.

    return wert und das coole Semikolen.



  • Felixxx schrieb:

    Richtig, so ist es auch keine Schande, wenn in irgendwelchen Beta Phasen von Büchern die warsch. auch nur online released worden sind Fehler drinnen sind.

    Erstens sind die Fehler bei Wolf wohl auch in der Print-Ausgabe und zweitens musst du wirklich auf das Datum achten, wann volkard sein Tutorial geschrieben hat. Es gab mal Zeiten, da wars noch nicht so weit her mit dem C++-Standard und seiner Unterstützung durch die Compiler.



  • Wir sehen aber, daß die J.W.-Leser oft schlimme Verständnisschwierigkeiten bekommen, die wir dann in langen Threads mühsam ausräumen. Und daß sie am Ende schneller C++ lernen würden, wenn sie das Buch nicht aufgeschlagen hätten.
    Das ist das eigentliche Problem. Nicht, daß er ein wenig Papier schwarz macht.



  • Felixxx schrieb:

    return wert

    Nö. Die main() braucht kein return.
    Aber fein, daß Du das Semikolon entdeckt hast.



  • volkard schrieb:

    Felixxx schrieb:

    return wert

    Nö. Die main() braucht kein return.
    Aber fein, daß Du das Semikolon entdeckt hast.

    seit wann ist das nen fehler? oO



  • volkard schrieb:

    Zusatzaufgabe: Abgesehen von der Verwendung des alten Nicht-Standard-Headers, was ist an diesem Programm noch falsch? Ich sehe noch zwei Sachen.

    void main und das Semikolon nach dem Funktionskörper.

    @Felixxx: return aus main ist in C++ nicht mehr notwendig; per Default wird aus main 0 zurückgegeben. In Vorstandardzeiten (bzw. Zeiten, bevor standardkonforme Compiler gängig waren), als void main nicht als problematisch angesehen wurde, war ein return aus einer void-Funktion natürlich ebenfalls unnötig.

    Allerdings wäre es womöglich an der Zeit, den Kurs vom Netz zu nehmen; inzwischen ist er in der bestehenden Form auch nicht wirklich hilfreich.



  • unskilled schrieb:

    volkard schrieb:

    Felixxx schrieb:

    return wert

    Nö. Die main() braucht kein return.
    Aber fein, daß Du das Semikolon entdeckt hast.

    seit wann ist das nen fehler? oO

    .h ist auch kein FEHLER. Ich denke ihr wisst was gemeint ist.

    Dass es tatsächlich Leser gibt, die Verständnisschwierigkeiten haben und auch das Buch von J.W. gelesen haben, bezweifle ich nicht, aber dass das alleine von diesem Buch kommt doch sehr stark. Ob ich int ausgabe am anfang deklariere oder erst kurz vor der tatsächlichen Verwendung verändert nicht meine Fähigkeit etwas zu verstehen. Außerdem, wer wird denn nur ein Buch lesen ?



  • seldon schrieb:

    volkard schrieb:

    Zusatzaufgabe: Abgesehen von der Verwendung des alten Nicht-Standard-Headers, was ist an diesem Programm noch falsch? Ich sehe noch zwei Sachen.

    void main und das Semikolon nach dem Funktionskörper.

    @Felixxx: return aus main ist in C++ nicht mehr notwendig; per Default wird aus main 0 zurückgegeben. In Vorstandardzeiten (bzw. Zeiten, bevor standardkonforme Compiler gängig waren), als void main nicht als problematisch angesehen wurde, war ein return aus einer void-Funktion natürlich ebenfalls unnötig.

    Allerdings wäre es womöglich an der Zeit, den Kurs vom Netz zu nehmen; inzwischen ist er in der bestehenden Form auch nicht wirklich hilfreich.

    Ja, das ist mir klar^^ Für Windows ist das wayne. Für DOS war es das nicht.


Anmelden zum Antworten