wo is der unterschied?



  • Hi,

    wo ist der unterschied zwischen dem hier:

    const char* FileName = "Text.txt";
    

    dem hier

    char const* FileName = "Text.txt";
    

    und diesem hier:

    const char const* FileName = "Text.txt";
    

    😕 😕



  • Hallo,
    zwei sind korrekt, einer ist falsch.



  • Hi,

    ja wo ist denn der unterschied? (sorry wenn einer falsch ist) aber wo ist der GENAUE unterschied? 😕 bzw. wo is der Sinn?



  • Die ersten beiden Sind identisch, Filename ist da ein nicht constanter Pointer auf konstante Elemente vom Typ char.
    Beim letzten würde ich eher tippen auf

    const char * const FileName = "Text.txt";
    char const * const FileName = "Text.txt";
    

    Was ein konstanter Pointer auf konstante Elemente vom Typ char wäre.



  • man liest immer von rechts nach links:

    char const* const foo="Hallo";
    ist dann:

    foo ist const Zeiger-auf const char

    bei
    char const* foo="Hallo";
    haben wir dann
    foo ist Zeiger-auf const char

    und bei

    char* const foo="Hallo";
    haben wir:
    foo ist const Zeiger-auf char

    alles klar?

    char const
    und
    const char

    sind äquivalent, aber char const ist logischer (und const char weiter verbreitet)


Anmelden zum Antworten