\n, \t sind ansi codes??



  • Hallo ihr alle,
    ich bin ein C++-newbie und schreibe gerade ein Programmchen welches ein txtfile darstellt. Dennoch muss man da viel mit \n , \t arbeiten. Aber soweit ich weiss gehoeren diese Zeichen gar nicht zu Ansi oder Unicode.

    1. Frage : Woher kommen diese komischen Zeichen??
    2. Frage : Wieviele solche Zeichen gibt es??
    3. Frage : Sind diese Zeichen OS abhaengig oder Programmiersprache abhaengig??

    mfg,
    Johnny





  • Versteh ich nicht.



  • Hallo

    Stell dir doch einmal die Frage, mit welchem einzelnen Zeichen du sonst ein Enter oder ein Backspace im Quellcode darstellen willst.
    Diese Escapezeichen sind sozusagen Platzhalter für nicht darstellbare Steuerzeichen. Diese sind natürlich Sprachabhängig, in C/C++ aber dann plattformunabhängig (in ihrer Bedeutung, nicht unbedingt in ihrer Anwendung)

    bis bald
    akari



  • "\n" ist an sich nicht teil des ASCII codes, jedoch ist es teil von C/C++;
    Wenn kompiliert, wird "\n" automatisch in das richtige Zeichen konvertiert,
    abhängig von der Platform, auf der der Compiler ausgeführt wird, wenn ich das
    richtig verstanden habe.
    Jedenfalls muss man sich normalerweise keine Sorgen über "\n" machen 😉
    Nur eines: ich glaube bei

    fstream fs("datdatdat.dat", ios::in);
    char c;
    fs>>c; // <- hier wird ein "\n" glaube ich ignoriert, und weiter bis zum

    nächsten Schriftzeichen gelesen.

    Stattdessen

    fs.get(c); // <- liest auch "\n"

    Viel Glück 🙂



  • ne0r schrieb:

    Wenn kompiliert, wird "\n" automatisch in das richtige Zeichen konvertiert,
    abhängig von der Platform, auf der der Compiler ausgeführt wird, wenn ich das
    richtig verstanden habe.

    Nein. Die Fluchtsequenzen werden unabhängig von der Plattform immer in denselben Zeichencode konvertiert.

    /EDIT: Das stand in dem verlinkten lernnetz-Dokument falsch drin.



  • Ah, gut zu wissen, danke!


Anmelden zum Antworten