Int bzw. double in CString wandeln - Wie?

Hallo zusammen,

ich mache meine ersten Erfahrungen mit VC++ und habe ein kleines Programm mit MFC geschrieben.

Ich würde jetzt gerne eine Int-Zahle/double-Zahl in einen CString wandeln. Wie mache ich das am besten?

Vielen Dank für Eure Hilfe.

Gruß Michael

Hallo Michael
ich kann zwar kein C++
aber in PHP gibts einen festen „Baustein“ die heist „settype“
ein Beispiel hierzu:

*************************************************************

<?php $irgendwas = 3.00;
print gettype($irgendwas); // gibt string aus settype($irgendwas, integer); // aendert den Datentypen print " --$irgengwas "; // gibt 3 aus print gettype($irgendwas); // gibt integer aus ?\> \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* gettype ueberprueft nur den Datentype, man muss das natuerlich nicht auf den Bildschirm drucken, ich nehm diese Kontrolle meist raus wenn das Proggie fertig ist eine zweite moeglichkeit waere ein "Casting" der Variable \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* <?php $irgendwas = 3.14;
$casting = (double) $irgendwas; print gettype($casting); // gibt double aus print " --$casting "; // gibt 3,14 aus $casting = (integer) $irgendwas; print gettype($casting); //gibt integer aus print " --$casting "; // gibt 3 aus ?\> \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* ich hoffe ich konnte dir wenigstens den weg zeigen. Viel spass noch Matthias > [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Michael,

z.B. so:

CString str;
double d = 1.23;
int i = 4;

str.Format("%d",i); // str == "4"
str.Format("%lf",d); // str == "1.23"

Es gibt in C++ allerdings auch eine String-Klasse und zwar ‚std::string‘, die um einiges mächtiger ist als die CString Klasse von MS. Zahlenumwandlungen macht man dann über sog. stringstreams, z.B. so:

#include 
#include 

using namespace std;

string str;
stringstream ss;
double d = 1.23;
int i = 4;

ss

Gruss Rolf

Nur 2 Nachkommastellen - Möglich?
Hallo Rolf,

herzlichen Dank. Das hat mir sehr weitergeholfen. Ist es möglich in diesem Befehl anzugeben, dass nur zwei Nachkommastellen angezeigt werden sollen? Danke.

Gruß Michael

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hab es selbst rausgefunden - Danke.
Habe es selbst rausgefunden.

Für zwei Nachkommastellen z.B. einfach:

str.Format("%.2lf",m_dbHorCM);

Gruß Michael