Was ist der Unterschied zwischen ein String und ein Char?
3 Antworten
Char = ein Zeichen, String = kein, ein, oder mehrere Zeichen, Char = Primitive, String = Klasse
Char = EIN Zeichen, bspw. 'f' oder '#'
String = VIELE Zeichen, bspw. "Hallo!"
(Eigentlich ist ein String ein char-Array, vllt hilft dir das ja auch bei der Vorstellung.)
In C++ spricht man tatsächlich oft von strings und meint damit char*
Bei C verstehe ich unter String das, was grtgrt gesagt hat.
Bei C++ hingegen nur besagte std::string Klasse. Je nach Kontext kann das aber auch std::wstring, std::u16string oder std::u32string sein. Meistens hat man es bei C++ ja nur mit String-Literalen zu tun, die dann sofort in eine der besagten Klassen verpackt werden.
Von Boost, der Win-API und anderen Bibliotheken wollen wir jetzt mal gar nicht erst anfangen. :)
Will man bei C++ darauf hinweisen, dass man sich auf C bezieht, dann sagt man ja i. d. R. "C-String", auf den dann mithilfe von char-Zeigern zugegriffen wird.
Naja, aber im Grunde genommen ist es ja einfach nur ein Speicherbereich, der aufeinanderfolgende Zeichen enthält. Meistens auch noch mit Null terminiert. (Es sei denn, man arbeitet mit Pascal-Bibliotheken ... aber das ist dann wieder etwas anderes ...)
So gesagt ist das falsch. Richtig ist: