On Fri, 22 Aug 2003 at 11:30 (+0200), Stefan Hundhammer wrote:
On Thursday 21 August 2003 21:33, Bernhard Walle wrote:
gibt es in C eine standardisierte Möglichkeit, Zahlen mit Tausenderpunkt zu formatieren. Der "Punkt" sollte dabei Abhängig von der locale sein. Entweder ANSI-C oder Glib.
Dass ich das passende Zeichen mit struct lconv, thousands_sep von Hand bestimmen und dann in einer Schleife setzen kann ist mir klar, ich möchte nur wissen ob es einfacher und standardisierter geht.
sprintf("%'f", 33333.3) funktioniert zwar hier, scheint aber hochgradig unportabel zu sein. Schaut's bei der glib besser aus?
Aus "man 3 printf":
das habe ich auch gefunden.
Plattformen wären mindestens Linux, FreeBSD, NetBSD, OpenBSD und Sun Solaris in einigermaßen aktuellen Versionen.
Also laut Man-Page nix POSIX, d.h. bei Solaris ist es unsicher (da mußt Du selber nachsehen), aber die anderen sind alle GLIBC-basiert, d.h. dort sollte es gehen.
NetBSD 1.6 funktioniert nicht (getestet) und dann interessiert mich Sun Solaris erst gar nicht. Naja, bevor ich jetzt stundenlang rumsuche und rumprobieren programmiere ich mir die Funktion selber, dann ist sie portabel. Gruß, Bernhard -- _________ http://www.bwalle.de _________________________________________________ "Was ökonomisch auf Dauer falsch ist, kann politisch auf Dauer nicht richtig sein." -- Franz Vranitzky