was bedeutet??



  • Hallo,

    was bedeutet folgende Zeile in einem C++ Code?

    char* pzeichen = "3,14";

    Ist das ein Zeiger oder was ist das genau?

    und was bedeutet folgende Anweisung:

    ein Zeiger auf char, der auf einen String verweist. (wie stelle ich so etwas dar?)



  • pzeichen ist ein Zeiger auf eine Zeichenkette, ja.

    zu 2. : Genau so wie in deinem Beispiel.

    ⚠ Allerdings muss man hier dazusagen, dass hier der Inhalt des Strings nicht verändert werden darf, wenn er so wie hier erstellt wurde.



  • und was bedeutet dies?

    char zeichen[17] = "3,14";
    char* pzeichen = zeichen;

    ist das dann ebenfalls ein Zeiger auf char der auf einen String verweist?



  • MarciMarc schrieb:

    und was bedeutet dies?

    char zeichen[17] = "3,14";
    char* pzeichen = zeichen;

    ist das dann ebenfalls ein Zeiger auf char der auf einen String verweist?

    ein char-zeiger auf den anfang eines char-arrays das einen String enthält desen Ende mit '\0' terminiert ist 😉



  • char* a = "3,14";
    
    char zeichen[17] = "3,14";
    char* b = zeichen;
    

    wobei

    a[0] = '0';
    

    nicht erlaubt ist, da a eigentlich auf const chars zeigt.

    char const* a = "3,14";
    

    sollte es besser heißen.
    die probleme entfallen übrigens bei b.



  • das heißt wenn in der Aufgabenstellung steht:

    ein Zeiger auf char, der auf einen String verweist, dann wäre das falsch?

    char zeichen[17] = "3,14";
    char* pzeichen = zeichen;



  • kommt drauf an, was du mit "String" meinst

    C++ Standard schrieb:

    a ordinary string literal hast type "array of n const char" and static storage duration

    das? dann nicht.
    oder meinst du std::string? 😉
    alles nur haarspalterei.


Anmelden zum Antworten