IntToStr, welche Library??
-
Ich versuche grade seit mehreren Stunden einen Weg zu finden, ne simple Zahl in einen String zu bekommen, den ich als Text bei nem Label verwenden kann.
Ich bin auf mehrere Lösungswege gestoßen, aber keiner funktioniert. Am simpelsten sieht diese IntToStr Funktion aus, die man auch in mehreren Beiträgen hier sieht, aber wenn ich sie Verwenden will, kommt nur:
error C3861: "IntToStr": Bezeichner wurde nicht gefunden.Was genau muss ich unter #include einbinden, damit das geht?
-
Hi,
IntToStr sieht stark nach VCL aus. Benutzt du Borland C++? Falls nicht, wirst du diese Funktion wohl nicht benutzen können.
Der eifnachste Weg - und einer, der auch unabhängig von dem benutzten Compiler funktiniert, ist einen String Stream zur hilfe zu nehmen:#include <iostream> #include <stringstream> // ... std::stringstream s; int i; std::cout << "int eingeben: "; std::cin >> i; s << i; std::cout << "Folgenede Eingabe wurde in einen String umgewandelt: " << s.str(); // ...
-
Alternative kann man dazu noch boost::lexical_cast benutzen.
-
ip schrieb:
Hi,
IntToStr sieht stark nach VCL aus. Benutzt du Borland C++? Falls nicht, wirst du diese Funktion wohl nicht benutzen können.
Der eifnachste Weg - und einer, der auch unabhängig von dem benutzten Compiler funktiniert, ist einen String Stream zur hilfe zu nehmen:#include <iostream> #include <stringstream> // ... std::stringstream s; int i; std::cout << "int eingeben: "; std::cin >> i; s << i; std::cout << "Folgenede Eingabe wurde in einen String umgewandelt: " << s.str(); // ...
Auf diese Weise hab ich es schon versucht.
Ebenso mit der ähnlichen Variante über ostrstream.
http://www.c-plusplus.net/forum/viewtopic-var-t-is-39488.html <-- Die Wege habe ich alle durch. Es klappt zwar soweit, als dass ich die Zahl umgewandelt bekomme.....
label1->Text::set(s.str());
....aber spätestens hier kommt die Meldung:
error C2664: 'void System::Windows::Forms::Control::Text::set(System::String ^)': Konvertierung des Parameters 1 von 'std::basic_string<_Elem,_Traits,_Ax>' in 'System::String ^' nicht möglich.Wenn ich über sprintf gehe, bekomme ich ja ein char array. Gibts möglichkeiten, dieses evtl in einen String zu überführen?
EDIT: Ich nutze Visual C++ 2008.
-
Das sieht aber nicht nach nativen C++ aus. Du benutzt doch den VCL Builder.
Schau da besser mal in das passende Fourm nach, oder öffne ein natives C++ Projekt.
-
int iDeineZahl = 42; CString str; str.Format("%d", iDeineZahl);
So mach ich das immer.
EDIT: sorry, hab grad gesehen, du nutzt den VCL-Builder.. war grad bei VC++
-
Sieht wohl eher nach C++/CLI aus. Windows::Forms und so
-
Nagut, werd nochma in nem anderen Forum nen Thread aufmachen. Dachte eigentlich, dass solche "basics" in jeder C Variante gleich sein sollten...
-
Die Basics sind schon gleich. Du verwendest aber nichtstandardisierte Typen.
-
GR-Thunderstorm schrieb:
Nagut, werd nochma in nem anderen Forum nen Thread aufmachen. Dachte eigentlich, dass solche "basics" in jeder C Variante gleich sein sollten...
Erstens ist C, C++, C++/CLI, C# jeweils eine eigene Sprache.
Zweitens sieht der C++ Standard keine Grafischen Oberflächen vor.