CString .Format
lima-city → Forum → Programmiersprachen → C/C++ und D
anzahl
array
aussehen
eigene funktion
ergebnis
format
funktion
gel
jemand
result
schleifen
stehen
stellen
variable
verschachtelung
-
Hallo,
ich habe eine float Zahl mit x nachkomma stellen z.B.
float fWert = 2.3845;
jetzt habe ich noch eine andere variable, in der die anzahl der nachkomma stehen z.B.
int iNachkomma = 1
als ergebnis soll dann
2.3 in einer Variablen stehen.
oder wenn iNachkomma = 2 dann 2.38.
so geht es auf 2 Stellen:
CString s;
s.Format("%01.2f", fWert );
nur ich will es halt variabel.
Ist das ?berhaupt m?glich? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich hab mir das jetzt nicht ganz genau ?berlegt aber du k?nntest mit
strchr den Punkt in der Kommazahl finden und den ersten Teil der Zahl(vor dem Punkt) inkl. Punkt ausgeben und danach in einer Schleife die restlichen gew?nschten Nachkommstellen ausgeben! (einfach von der gefunden Position die Feldzahl des Arrays bis zum gew?nschten Wert erh?hen)
Hoffe du verstehst was ich meine und ich hoffe auch das es funktioniert! -
danke,
das w?re mein Plan B wenn die einfachere M?glichkeit mit CString::Format nicht funktioniert.
Eigentlich m?sste es doch f?r sowas eine Funktion geben, oder?
-
float fWert = 2.3845;
int iNachkomma = 1
CString s;
s.Format((iNachkomma == 1) ? "%01.1f" : "%01.2f", fWert );
Es wird nur schwer, wenn du noch mehr verschiedene M?glichkeiten haben willst. Dann wird es bei dieser M?glichkiet durch die Verschachtelung so un?bersichtlich, das ich das dann an deiner Stelle in eine eigene Funktion auslagern w?rde. -
Falls es noch jemanden interessiert:
Als Funktion zum Erstellen von variablen Nachkommastellen w?rde das ungef?hr so aussehen:
void FloatFormat(CString & rstrFloat, float fFloat, unsigned short int usNachkomma)
{
???CString strTemp;
???strTemp.Format("%%01.%uf", usNachkomma);
???rstrFloat.Format(strTemp, fFloat);
}
fFloat wird in rstrFloat abgelegt, vorher wird noch per usNachkomma festgelegt, wie viele Nachkommastellen angezeigt werden sollen.
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage