Int to Char*
-
Hallo,
Ich möchte mehrere intger in einer gewissen reinenfolge zusammen in ein char* packen.
mit String habe ich es bereits hinbekommen, aber ich möchte es gerne mit char* haben.
Könnt ihr mir bitte ein Beispiel geben wie ich das machen kann?
Kann ich in diesem Fall auch itoa anwenden? Wenn ja wie?#include <iostream> #include <sstream> #include "stdafx.h" using namespace std; int main() { int tag = 24; int monat = 3; int jahr= 93; //Mit String std::stringstream ss; ss << tag << "." << monat << "." << jahr << endl; string text = ss.str(); cout << text << endl; //Mit char* char* sdate= new char[11]; strcpy(sdate,ss.str()); // diese Zeile ist falsch cin.get(); return 0; }
-
//strcpy(sdate,ss.str()); strcpy(sdate,ss.str().c_str());
?
-
Super! Danke es funktioniert so wie du geschrieben hast.
Kann ich in diesem Fall auch itoa anwenden?
Wie würde das aussehen?
-
string.c_str() gibt einen C-String zurück
also "jsbdgfsghd\0"du kansnt damit jede beliebige funktion füttern die c strings erwartet
-
The architect schrieb:
Kann ich in diesem Fall auch itoa anwenden?
Klar. Steht alles in der Doku: http://msdn.microsoft.com/de-de/library/yakksftt(VS.80).aspx
-
The architect schrieb:
Kann ich in diesem Fall auch itoa anwenden?
Nein, natürlich nicht.
c_str() gibt dir einen Puffer in dem du nix modifizieren darfst.
-
hustbaer schrieb:
The architect schrieb:
Kann ich in diesem Fall auch itoa anwenden?
Nein, natürlich nicht.
c_str() gibt dir einen Puffer in dem du nix modifizieren darfst.Upps! Stimmt natürlich...