Müssen strings immer in arrys stehen?



  • Moin Leutz,

    hab da ma ne Frage: Müssen Strings immer in Arrys stehen?
    Ist soetwas oder so ähnlich nicht auch möglich?#
    [cpp]
    int main()
    {
    string text;
    text ="Hallo";
    return 0;
    }

    Ich habe manchmal Probleme, Texte von Variable zu Variable weiterzugeben oder auszugeben.
    Wie arbeitet man am besten mit Strings in C?

    VG,
    Susilein



  • Susilein schrieb:

    hab da ma ne Frage: Müssen Strings immer in Arrys stehen?

    In C schon. Wenn man mal von #define TEXT "Hallo" absieht.

    Ist soetwas oder so ähnlich nicht auch möglich?

    Nicht in C. Das wäre dann C++ oder ne andere, höhere Sprache.

    MfG

    Held der Nacht



  • Dein erwähntes Beispiel bringt wenig da die Klasse string intern auch ein array benutzt.

    Du könntest auch einfach chars allozieren und deren addressen in ein array schreiben. Dann müssen die addressen nicht in dem virtuellen(im physischen müssen sie ja sowieso nicht zusammenkleben wenn das BS im PM läuft, was ich mal annehme) Adressraum deines Programms aufeinander folgen.
    Aber ich frag mich nur was das dir bringen soll?

    mfg tobZel



  • Susilein schrieb:

    Ich habe manchmal Probleme, Texte von Variable zu Variable weiterzugeben oder auszugeben.
    Wie arbeitet man am besten mit Strings in C?

    kopieren mit strcpy() aus der string.h

    Ich würde dir empfehlen dir einmal ein paar Funktionen aus der string.h anzuschauen, weil die sehr pratisch sind im Umgang mit Strings 😃

    mfg tobZel



  • Man könnte sich sicher ein eigenes Format für eigene Strings ausdenken, z.B. Listen, oder eine Kombination aus Arrays und Listen. Hätte ja auch gewisse Vorteile. Die offensichtlichen Nachteile, keine Standardstringfunktionen, überwiegen aber idR.



  • In C ist ein string so definiert:

    eine sammlung von chars die mit einem null byte terminiert wird

    Folglich: ein string im C sinne ist immer ein array.


Anmelden zum Antworten