QString: Zahl mit maximal 2 Dezimalstellen ohne abschließende Null

8

Ich habe eine Abteilung wie folgt:

%Vor%

Manchmal gibt es Antworten wie 96.0000000001, manchmal funktioniert die Division wie erwartet.

Ich möchte meine Anzahl auf maximal zwei Dezimalstellen und ohne abschließende Nullen begrenzen.

Wenn 96.5500000001 angezeigt wird, sollte 96.55 angezeigt werden.

Wenn 96.4000000001 angezeigt wird, sollte 96.4

angezeigt werden

Es ist möglich, eine Zeichenfolge auf diese Weise zu formatieren?

Ich habe die Dokumentation überprüft und es liefert das Argument 'f' zur Angabe der Anzahl der Dezimalstellen, aber auf diese Weise bleiben die abschließenden Nullen erhalten. Das habe ich ausprobiert:

%Vor%

Aber das gibt mir für 96.4000000001 - & gt; 96.40 anstelle von 96.4

Irgendeine Lösung? Wie kann ich auf diese Weise formatieren?

    
Neaţu Ovidiu Gabriel 22.07.2014, 08:49
quelle

1 Antwort

8

In der Dokumentation ist ziemlich klar, was Sie tun sollten:

  

Eine Genauigkeit wird auch mit dem Argumentformat angegeben. Für die Formate "e", "E" und "f" steht die Genauigkeit für die Anzahl der Nachkommastellen. Für die Formate "g" und "G" stellt die Genauigkeit die maximale Anzahl signifikanter Stellen dar (abschließende Nullen werden weggelassen).

Verwenden Sie daher entweder das Format "g" oder "G".

main.cpp

%Vor%

main.pro

%Vor%

Erstellen und Ausführen

%Vor%

Ausgabe

%Vor%     
lpapp 22.07.2014, 09:01
quelle

Tags und Links