| Autor |
Nachricht |
xRay47
Unregistrierter
|
xRay47 Unregistrierter
20:57:06 15.05.2012 Titel: |
String2 = String + int |
Zitieren |
Hallo,
Wie kann ich ein Int in einem String einfügen ? also wie in der Überschrift:
String2 = String + int
Strings kann man ja leider nicht hoch/runter-Zählen lassen deswegen das Int. |
|
|
|
 |
Martin Richter
Moderator
Benutzerprofil
Anmeldungsdatum: 18.04.2006
Beiträge: 14217
|
Martin Richter Moderator
21:51:09 15.05.2012 Titel: |
|
Zitieren |
Indem Du erstmal den int in Text umwandelst. Siehe itoa, sprintf, etc. |
_________________ Martin Richter (MVP für C++) WWJD http://blog.m-ri.de
"A well-written program is its own heaven; a poorly written program is its own hell!" The Tao of Programming
|
|
 |
xRay47
Unregistrierter
|
xRay47 Unregistrierter
02:07:07 17.05.2012 Titel: |
|
Zitieren |
|
 |
HermannGo
Mitglied
Benutzerprofil
Anmeldungsdatum: 24.10.2008
Beiträge: 84
|
HermannGo Mitglied
13:21:19 17.05.2012 Titel: |
|
Zitieren |
| C++: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | CString Test="Nummer";
int Zahl=3;
CString string2="";
string2.Format("%s + %d",Test,Zahl);
//Oder********************************
CString Test="Nummer ";
CString string2="";
int Zahl=3;
string2.Format("%d", Zahl);
CString string3=Test + string2; | | |
|
|
|
 |
xRay47
Unregistrierter
|
xRay47 Unregistrierter
22:57:48 19.05.2012 Titel: |
|
Zitieren |
Was muss ich denn für CString Includen ? <string.h> und <cstring> bringen nichts |
|
|
|
 |
merano
Mitglied
Benutzerprofil
Anmeldungsdatum: 21.12.2006
Beiträge: 421
|
merano Mitglied
23:51:02 19.05.2012 Titel: |
|
Zitieren |
|
 |
HermannGo
Mitglied
Benutzerprofil
Anmeldungsdatum: 24.10.2008
Beiträge: 84
|
HermannGo Mitglied
12:12:26 20.05.2012 Titel: |
|
Zitieren |
Bei Konsolenanwendung:
| C++: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <iostream>
#include <string>
using namespace std;
int main()
{
string wort="Wort";
int zahl=333;
char temp[100];
sprintf(temp, "%d" ,zahl);//Für double oder float: %f
string Gesamt=wort + " " + temp;
cout << Gesamt << endl;
return 0;
} | |
Der vorherige Code war für MFC - Anwendungen gedacht.
Hier noch was für die Konsole. (siehe Martin Richter "sprintf")Damit müsstest Du jetzt aber klarkommen. |
|
|
|
 |
nn
Mitglied
Benutzerprofil
Anmeldungsdatum: 02.10.2011
Beiträge: 257
|
nn Mitglied
13:01:28 20.05.2012 Titel: |
|
Zitieren |
| HermannGo schrieb: | Bei Konsolenanwendung:
|
Das sprintf braucht man in VS 2010, dank C++11, nicht mehr selbst schreiben. Allerdings fehlt derzeit noch eine Überladung von to_string für int. Deshalb braucht man diesen unschönen cast:
| C++: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
string w = "Wort";
int n = 100;
// Standardkonform wäre
// string s = w + to_string(n);
string s = w + to_string(static_cast<long long>(n));
cout << s << endl;
return 0;
} | | |
Zuletzt bearbeitet von nn am 13:08:51 20.05.2012, insgesamt 1-mal bearbeitet |
|
 |
xRay47
Unregistrierter
|
xRay47 Unregistrierter
21:21:16 27.05.2012 Titel: |
|
Zitieren |
Hallo,
Das Beispiel mit dem string s = w + to_string(static_cast<long long>(n)); von "nn" funktioniert wunderbar, genauso wie ich es mir erhofft hatte.
Vielen Dank |
|
|
|
 |
Supreme
Mitglied
Benutzerprofil
Anmeldungsdatum: 10.06.2012
Beiträge: 2
|
Supreme Mitglied
14:00:10 10.06.2012 Titel: |
|
Zitieren |
Ich dachte man macht das ganze etwa so:
| C++: | char Final[32];
char* Test = "Bla";
int Number = 1337;
sprintf(Test, "%s + %d", Final, Number); | |
(Ich bin relativ neu in C++, nicht wundern wenns irgendwie falsch ist. ) |
|
|
|
 |
|
Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben. Sie können auf Beiträge in diesem Forum antworten. Sie können Ihre Beiträge in diesem Forum nicht bearbeiten. Sie können Ihre Beiträge in diesem Forum nicht löschen. Sie können an Umfragen in diesem Forum nicht mitmachen.
|
|
|
|
|