0 an einstellige Int-Variable voranstellen ?
-
Hallo zusammen.
kann mir jemand sagen wie ich bei einer uint-Variablen die einstellig ist, eine "0" voranstellen kann ????
Dank und Gruß
gorbo
-
Sind doch schon 31 da!?
Oder welche Basis?
Oder solls ein String sein?
-
gorbo schrieb:
kann mir jemand sagen wie ich bei einer uint-Variablen die einstellig ist, eine "0" voranstellen kann ????
etwa so:
char buff[32]; sprintf (buff, "0%d", deine_variable);
-
Habe vergessen zu sagen, dass ich mit VC++ (2008) arbeite. Wenn ich z.B. 40/10 rechne bekomme ich 4 zurück. Jedoch hätte ich gerne bei einstelligen Ergebnissen eine Null davor (nicht als String).
-
Was soll das bringen? Das macht nur Sinn, wenn die Zahl in einem String steht.
-
Ein INT ist ein INT.
Wenn du eine Ausgabe mit führender 0 möchtest dann kannst DU bei der Ausgabe diese voranstellen.
Sonst bleibt es ein INT und du kannst damit rechnen.
Ein INT hat keine führende 0.
-
Dann Frage ich mich wie die Programmierer der API die ich verwende es geschafft haben mit einer Funktion wie
GetTime(uint &Stunde, uint &Minute, uint &Sekunde);
mir die folgende Zeit zu übergeben:
Stunde = 05;
Minute = 08;
Sekunde = 04;Da ich nur gelegentlich programmiere bin ich leider kein "C++ - Gott". Hier fehlt mir wohl das nötige Grundwissen
Ich gebe Euch Recht, und werde die Daten in einen String umwandeln um die Zeit folgendermaßen auszugeben: 05:08:04
Jedoch interessiert es mich schon, wie die das geschafft haben, da ich gerne in diesem Stil weiterprogrammieren würde.
Dank und Gruß
gorbo
-
Das haben die nicht geschafft.
Wenn du dir die Zahlen im Debugger anschaust, sind sie in einen String umgewandelt. Möglich, dass das Ausgabeformat im Debugger einstellen kannst. Oder du hast dir die Zahlen auf die Console oder in eine Dabei schreiben lassen. Da werden sie auch in einen String umgewandelt. Das Format ist beliebig.
-
So läuft der Hase...
Ich habe wie du sagst, die Werte im Debugger angeschaut. Dann kann ich da ja mal einen Haken hintermachen.
Vielen Dank für die Info...
Gruß gorbo