Char | String | AnsiString



  • Is jetzt vileicht ne dumme Fragen.

    Was ist der Untershcied zwischen

    Char
    String
    AnsiString??

    thx

    Thargor



  • Char

    ist ein einziges zeichen bzw. der typ für ein zeichen

    String

    ein String ist ein char array, also ein eindimensioneles Feld aus Zeichen

    AnsiString

    AnsiSTring ist eine Klasse zur String Bearbeitung.



  • Ok. Danke!



  • String ist im BCB ein typedef für AnsiString.



  • Hallo Jansen,

    wenn String im BCB ein typedef für AnisString ist, warum sind dann Unterschiede in der Syntax ?

    z.B.
    string s1 = Hallo;
    AnsiString as1 = Hallo;
    int i1 = s1.length(); // l von length ist klein geschrieben
    int i2 = as1.Length(); // L von Length wird groß geschrieben



  • char = einfach eine kleine ganzzahlvariable die den kompletten Asciicode fassen kann (0-255) und daher oft für Zeichenketten benutzt wird.

    string/std::string= Klasse zur Stringbearbeitung, quasi um das was mit char arrays geht einfacher zu machen (statt strcpy(string1, "hallo") einfach string1 = "hallo" usw.
    Ist allerdings im Gegensatz zum AnsiString Standard und daher ziemlich auf allen neueren C++ compilern vorhanden.

    AnsiString = ziemlich genau dasselbe wie string nur nicht Standard und von Borland.
    Kann dafür aber ein paar Sachen mehr und da die ganze VCL dadrauf aufbaut kannst du eh nicht ohne.

    String = typedef von AnsiString, also genau dasselbe(nur kürzer zu tippen 😉 ) aber KEIN "string" .



  • Hallo,
    hast ja recht.
    Ich denke ich bin wohl Urlaubs- bzw. Wochenendereif.

    Hab nicht bemerkt, dass Jansen
    String typedef AnsiString geschrieben hat und nicht
    string typedef AnsiString.


Anmelden zum Antworten