String und Char? Anfängerfrage
-
Hallo zusammen,
der Umstieg von C++ auf C++/CLI ist garnicht so leicht.
Was ich im Augenblick brauche, sind 2 Dinge:
1. Wie konvertiere ich ein char, Char in einen String.
char a='a';
g->DrawString(a.ToString(), ...) liefert immer den String "65" zurück, aber ich möchte als String das Zeichen "a" erhalten.2. Wie mache ich folgendes in C++/CLI?
DasIstMeinString[3] = DasIstEinZeichen_Char;
Schon mal Danke,
Bernd
-
Zu 1.
Char a = 'a'; //So.. MessageBox::Show(a.ToString()); //Oder so... MessageBox::Show(Convert::ToString(a));
Frage zwei verstehe ich nicht so wirklich...
Gibt doch mal ein Bsp. zu zwei.
-
Zu Frage Zwei:
In .net sind Strings immer unveränderlich.
Das was du machen willst, geht mit StringBuilder.
-
@Doug_HH:
Ich stelle gerade fest, daß ich ...[b]c[/b]har a = 'a'; //So.. MessageBox::Show(a.ToString()); //Oder so... MessageBox::Show(Convert::ToString(a));
... verwendet habe. Also macht es doch einen Unterschied, ob ich char oder Char verwerde. Nun ja...
@nn:
Also doch ein Grund, weiterhin bei C++ zu bleiben, wenn es schnell gehen soll.Danke für Eure schnelle Hilfe.
-
wannabe_2 schrieb:
@Doug_HH:
Ich stelle gerade fest, daß ich ...[b]c[/b]har a = 'a'; //So.. MessageBox::Show(a.ToString()); //Oder so... MessageBox::Show(Convert::ToString(a));
... verwendet habe. Also macht es doch einen Unterschied, ob ich char oder Char verwerde. Nun ja...
Richtig.
char
entsprichtSystem::Byte
oderSystem::SByte
,Char
hingegen istSystem::Char
, was am ehesten noch einemwchar_t
entspricht. Für .NET-Char-Literale verwendest du immer diese Syntax, um derartigen Problemen aus dem Weg zu gehen:foo = L'x';
MfG