int in string wandeln
-
Hallo,
ich hab eine Frage zum wandeln von int in string und zwar versuche ich folgendes
int a = 2;
int b = 4;
string mystring;
mystring.append(a);
mystring.append(b);--> also beide Zahlen einfach nur in den String einzufügen, warum klappt das nicht, wie mache ich es richtig?
-
mit stringstreams
int a = 4; string mystring; stringstream buf; buf << a; buf >> mystring;so sollte es gehen!
-
-
Villeicht sollte man noch boost::lexical_cast<> in die FAQ mit aufnehmen.
-
itoa() ist vll ne lösung
-
nur gehört meines Wissens itoa im Gegensatz zu atoi nicht zum C++ Standard.
-
#include <iostream>
#include <string>
using namespace std;int main()
{
int a=10;
char pf[1000];
string s="test_";s+=itoa(a,pf,10);
cout << s << endl;
return 0;
}---
Ausgabe:
test_10itoa(integerzahl, puffer, zahlensystem(???));
-
itoa ist C und sollte in einem C++ Programm nicht verwendet werden.
Zahlensystem ist die Basis, zu der die Zahl ausgegeben werden soll, Standard 10 (Dezimalsystem), Sind glaubich Zahlen bis 36 erlaubt
-
Herrmann schrieb:
nur gehört meines Wissens itoa im Gegensatz zu atoi nicht zum C++ Standard.
Stimmt genau, es gehört sogar nicht einmal zu ANSI-C, also für portable Sachen eher nicht benutzen, auch wenn es einige Compiler haben, viele haben es nicht.