CString
-
Ich möchte Zahlen von 1 bis 1000 ausgeben. Dafür lasse ich einen
Zähler laufen und gebe diesen als String aus. Jetzt möchte ich aber,
dass nicht 1 sonder 0001 ausgeben wird. Kann ich einstellen, dass
immer 4 Stellen ausgegeben werden?
-
%04d als Formatstring
-
Hallo,
ich verwende dafür die Formatierung für CString Objekte an :man kann mit zusätzlichen Formatangaben Breite,Genauigkeut und Ausrichtung spezifizieren. %[FLAG][BREITE].GENAUIGKEIT]TYP
FLAG - linksbündig(ansonsten rechtsbündig)
+ Vorzeichenanzeige (ansonsten nur Minuszeichen bei neg. Zahlen)
0 füllt die Feldbreite mit Nullen auf
BREITE gibt die Mindestzahl von Zeichen an, die das Feld anzeigen soll
.GENAUIGKEIT bestimmt, wie viele Zeichen nach dem Dezimalpunkt stehen sollenBeispiel:
CString strText;
int i;
strText.Format("%.4d",i);
- ergibt eine 1 mit 3 vorangestellten Nullen.
-
MWerner schrieb:
Beispiel:
CString strText;
int i;
strText.Format("%.4d",i);
- ergibt eine 1 mit 3 vorangestellten Nullen.Falsch: i wurde nicht zugeweisen, daher ist der inhalt undefiniert.
<<schullehrer modus ein>>
richtig wäre also:int i=1;
<<schullehrer modus aus>>