Von AnsiString zu Char den Inhalt uebertragen.
-
Hallo,
Ich habe eine Edit1->Text nur eine Buchstabe inhaltet.(habe beschrängt).
ich wollte den AnsiString in Char variable uebertragen. kann jemand sagen, wie es gaht?
Ich habe folgendes Ausprobiert:
char Z_Laufwerk='C';
strcpy(Z_Laufwerk,Edit1->Text.c_str()); // es klappt nicht.
Gruss,
S.Mathi
-
-
WAS klappt denn nicht?
-
Ich habe so ändert, wie in FAQ stand. Es wird von Kompailer akzeptiert,aber passert ein Laufzeitfehler:
char Z_Laufwerk='C';
Z_Laufwerk=Edit1->Text[0];Der Fehler passiert in dstring.h
auf die Zeile:
[cpp] char& __fastcall operator [](const int idx)
{
ThrowIfOutOfRange(idx); // Should Range-checking be optional to avoid overhead ?? Fehler Zeile
Unique(); // Ensure we're not ref-counted
return Data[idx-1];
}[/cpp]So dann habe ich 2 variante ausprobiert:
char Z_Laufwerk='C';
strcpy(Z_Laufwerk,Edit1->Text.c_str());
Eine Fehlermeldung kommt von Kompailer:
"[C++ Fehler] Unit1.cpp(95): E2034 Konvertierung von 'char *' nach 'char' nicht möglich"
was mache ich falsch?

Gruss,
S.Mathi
-
Hallo
womit faengt ein AnsiString an (mit 0 oder 1)

MfG
Klaus
-
KlausB schrieb:
Hallo
womit faengt ein AnsiString an (mit 0 oder 1)

MfG
Klausmit 1
alsochar Z_Laufwerk='C'; Z_Laufwerk=Edit1->Text[1];bis bald
akari
-
Hallo
@akari
warum verraetst du denn alles
lass ihn doch mal ein bischen denkenMoeglicherweise fuehrt das dazu, das er weitere (unnoetige) Fragen
schon vorher durch Ueberlegen sich selbst beantwortetMfG
Klaus
-
Hallo guten Morgen
Der Wissens- und Erfahrungsstand eines Jeden hier im Forum ist unterschiedlich das sollte auch von denen berücksichtigt werden die in C zu Hause sind.
Evi48
-
Um nochmal auf das ursächliche Problem zurückzukommen... Du hast versucht einem einzelnen char-Zeichen eine char*-Zeichenkette zuzuweisen. Das kann nicht funktionieren, weii eine Zeichenkette immer mit \0 als Endezeichen versehen wird. Für eine Zeichenkette werden also immer mindestens 2 Byte benötigt, während Du nur ein einziges Byte zur Verfügung gestellt hast...
-
Hallo,
danke Joe_M. so habe ich auch nicht über das Problem nachgedacht.Evi48