Suche Funktionen für C

deepthroat hat gesagt.:
Code:
double a = 49494.494;

printf("%.2f", a);

Gruß

dann wird aber nur 49494.49 und nicht 49,494.494 ausgegeben!! So weit war ich auch schon. :(

Ich brauche die Formatierung hierfür:
Hier die Sitemap

Schaut auf die Statistik am Ende der Seite, die kb sollen in z.B: 8,123Kb dargestellt werden, bzw auch MB dann aber mit Nachkommastellen (1,000.00MB).
Diese HTMLSeite wurde mit meinen Programm erstellt :)
 
Hast du auch die Locale gesetzt und geschaut das es funktioniert hat? Die Funktion setlocale gibt NULL bei einem Fehler zurück. Du kannst auch statt dem Leerstring "german" als 2ten Parameter angeben (oder was auch immer die C Bibliothek unterstützt).

Gruß
 
deepthroat hat gesagt.:
Hast du auch die Locale gesetzt und geschaut das es funktioniert hat? Die Funktion setlocale gibt NULL bei einem Fehler zurück. Du kannst auch statt dem Leerstring "german" als 2ten Parameter angeben (oder was auch immer die C Bibliothek unterstützt).

Gruß

Ne hatte ich nicht gemacht aber jetzt, aber trozdsem werden die Tausender stellen nicht getrennt :(

Code:
{double zahl = 123456123.1;
   setlocale(LC_ALL, "");
   printf("%.2f\n",zahl);}

Nun wird aber statt des "." ein "," gesetzt das ist schon mal gut, nun doch was neues gelernt :)

Noch ne Frage dazu kann atoi() usw. solche String Problemlos verarbeiten, also wieder in ne Zahl wandeln? (Ich habe jetzt keine lust das zu testen :( )
 
Also von der Funktion atoi würde ich abraten, da die Funktion nicht auf Fehler prüft - und auch nicht auf Eigenheiten der gesetzten Locale eingeht.

Aber mit scanf kannst du dann solche Werte problemlos wieder einlesen.

Cusco hat gesagt.:
Ne hatte ich nicht gemacht aber jetzt, aber trozdsem werden die Tausender stellen nicht getrennt :(
Hm. Evlt. macht das der Borland Compiler irgendwie nicht?! In der MSDN (http://msdn2.microsoft.com/en-us/library/x99tb11d.aspx) steht:
LC_NUMERIC

Decimal-point character for the formatted output routines (such as printf), for the data-conversion routines, and for the non-monetary formatting information returned by localeconv. In addition to the decimal-point character, LC_NUMERIC also sets the thousands separator and the grouping control string returned by localeconv.

So wie ich das verstehe sollte das dann also funktionieren wenn man LC_NUMERIC setzt (was mit LC_ALL ja abgedeckt ist).

Gruß
 
Zuletzt bearbeitet:
Hmm, das ist aber müll. Frage ist das ein Compilier oder Laufzeit-Rotine? Könnte ja auch sein das mein Windowseinstellung irgendwie falsch ist ...
 
Hi, wie rufe ich eine MessageBox mit selbst definierten Buttons auf? Ich brauche eine Box mit Text "Welche Sortierung?" (so ähnlich) Titel "Programmname" und den Buttons "Titel", "Beschreibung", "Dateiname" und evt einen Icon mit nem Fragezeichen. Ich finde in der MSND nix darüber, finde nur festgelegte Buttons.
 
Das gibt es nicht direkt. Da musst du dir selbst ein Fenster zusammensetzen und die Buttons dann entsprechend beschriften.

Die eingebaute MessageBox bietet leider nur Standard-Texte an.
 
Endurion hat gesagt.:
Das gibt es nicht direkt. Da musst du dir selbst ein Fenster zusammensetzen und die Buttons dann entsprechend beschriften.

Die eingebaute MessageBox bietet leider nur Standard-Texte an.

Wie, ein eigenes Fenster mit CreateWindow usw.? :eek: Nur damit ich es Richtig verstehe. Was ist mit diesen sogenanten Dialogen? Das sind doch auch Fenster oder? Da bin ich ich noch nicht hintergestiegen.
 
Ein Dialog ist in der Basis auch ein Fenster, er hat aber noch ein paar zusätzliche Eigenschaften/Fähigkeiten.

Also sinnvollerweise baust du dir einen Dialog (kannst du auch im Dialog-Editor zusammensetzen), und rufst den mit der DialogBox-Funktion auf. Wenn du die Texte dynamisch halten willst, musst du in der DialogProc (musst du ja übergeben) das im WM_INITDIALOG-Handler machen.
 
Endurion hat gesagt.:
Ein Dialog ist in der Basis auch ein Fenster, er hat aber noch ein paar zusätzliche Eigenschaften/Fähigkeiten.

Also sinnvollerweise baust du dir einen Dialog (kannst du auch im Dialog-Editor zusammensetzen), und rufst den mit der DialogBox-Funktion auf. Wenn du die Texte dynamisch halten willst, musst du in der DialogProc (musst du ja übergeben) das im WM_INITDIALOG-Handler machen.

Welchen Editor? Ich habe nur den Freeware Borland zu verfügung, da ist sowas nicht mit drinn, so viel ich weiss
 

Neue Beiträge

Zurück