Forum: PC-Programmierung c++ tausendertrennzeichen


von schorschy (Gast)


Lesenswert?

hey leute hab ein problem probiere schon seit 2 stunden hinzubekommen 
das die zahl die in meinem label ausgegeben wirt im format 000.000.000 
also mit tausender trennzeichen doch leider bekomme ich es nicht hin

arbeite mit borland builder 4

von Christoph _. (chris)


Lesenswert?

Wieso schaust du nicht in der Doku zu printf nach (oder eben der 
Funktion, die du zur Ausgabe benutzt)?

Wenn du darin nichts findest, musst du das wahrscheinlich manuell 
machen. Stichworte dazu waeren Modulo (der operator % ) und 
Integer-Division (der operator / ).

von SiO2 (Gast)


Lesenswert?

Kannst die Zahl aber auch zeichenweise von hinten in nen String packen 
(am besten einen frisch gewaschenen ;) ), und dann an passender stelle 
nen punkt hinzufügen.

von Rolf Magnus (Gast)


Lesenswert?

> hey leute hab ein problem probiere schon seit 2 stunden hinzubekommen
> das die zahl die in meinem label ausgegeben wirt im format 000.000.000
> also mit tausender trennzeichen doch leider bekomme ich es nicht hin

Üblicher (und auch standardisiert) in Deutschland ist ein verkürztes 
Leerzeichen. In der Schweiz dagegen wird ein Hochkomma verwendet. Im 
Englischen ein Komma. Es hängt also auch von den Ländereinstellungen ab. 
Siehe http://de.wikipedia.org/wiki/Zifferngruppierung
In der Regel wird das systemweit eingestellt, und es gibt dann 
entsprechende System-Funktionen zur Konvertierung.

von WEIF (Gast)


Lesenswert?

Hi,

bei BCB gibts zwei globale Variablen für die Trennzeichen :


void __fastcall TForm1::Button1Click(TObject *Sender)
{
      Edit1->Text = DecimalSeparator;
      Edit2->Text = ThousandSeparator;
}

diese Separatoren hängen unter anderem von dem verwendeten Windows
( de /en ) und den Ländereinstellungen ab.

und sie werden bei einigen Formatumwandlungen verwendet.

HTH

WEIF

von Karl H. (kbuchegg)


Lesenswert?

Meine persönliche Meinung:
Wenn das nicht gerade eine ausgesproche kaufmännische Anwendung
(Buchhaltung, etc) ist:

Lass diesen Unsinn mit Tausendertrennzeichen bleiben. Sowas
verwirrt nur. Ist schon schlimm genug, daß offtmals nicht
klar ist, ob nun einen Dezimalpunkt oder ein Dezimalkomma
zu benutzen ist.

Ein Programmierer und wahrscheinlich die meisten Techniker
werden noch nicht mal mit der Wimper zucken und ganz
selbstverständlich einen Punkt benutzen und auch bei Ausgaben
einen Punkt als Dezimaltrenner lesen. Für die steht völlig
außer Frage, dass 3.141  der Anfang von Pi ist und als
3 Komma 1 4 1 zu lesen ist und keinesfalls als 3 tausend 141

Wenn dir auf der anderen Seite jemand sowas in ein Programm
eingibt:   2.712
was ist das dann? Meint er 2 tausend 712 oder meint er 2 Komma 712?


Ich dachte auch mal, daß solche Tausenderseperatoren eine gute
Idee wären. Aber außer für Rechnungen und Kostenvoranschläge
(also reines Druckwerk) sind sie es nicht. Ganz im Gegenteil:
Die Verwirrung war gross und durch den dezidierten Verzicht auf
solchen Schnickschnack eröffnete sich die Möglichkeit in einer
Eingabe erst mal alle , in . zu ersetzen und so bei der Eingabe
eine gewisse Unabhängigkeit von den Kommavorlieben des Benutzers
zu erreichen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.