Formatierung der C ++ Konsolenausgabe

7

Ich habe versucht, die Ausgabe für die längste Zeit an die Konsole zu formatieren und nichts passiert wirklich. Ich habe versucht, so viel von iomanip zu verwenden, wie ich kann und die Funktionen ofstream& out.

%Vor%

Ist ihr irgendetwas, mit dem ich alles richtig aufeinander ausrichten kann? Die Funktionen, die ich anrufe, sind selbsterklärend und haben alle unterschiedliche Längen, so dass sie nicht sehr gut aufeinander abgestimmt sind.

Ich habe fast alles in iomanip ausprobiert.

    
user40120 19.09.2009, 23:44
quelle

4 Antworten

2

Sie können eine Prozedur schreiben, die immer die gleiche Anzahl von Zeichen in der Standardausgabe ausgibt. etwas wie

%Vor%

und dann in deinem Programm so verwenden

%Vor%     
Vargas 20.09.2009, 00:01
quelle
15

Denken Sie darüber nach wie Microsoft Excel :) Sie denken an Ihren Stream als Felder. Sie legen zuerst die Breite des Feldes fest, dann fügen Sie Ihren Text in dieses Feld ein. Zum Beispiel:

%Vor%

......

......

Die Feldbreite bedeutet nichts als die Breite von text + spaces . Sie könnten fill alles andere als Leerzeichen:

%Vor%

.....

%Vor%

......

Ich denke, der beste Weg ist, Ihr Format herauszufinden, dann schreiben Sie einen neuen Formatierer, der alles macht, was Sie wollen:

%Vor%

Wenn Sie angefangen haben, über parametrisierte Manipulatoren nachzudenken, sind nur die Parameter int oder long einfach zu implementieren, andere Typen sind wirklich unklar, wenn Sie mit Streams in C++ nicht vertraut sind.

    
AraK 20.09.2009 00:29
quelle
6

Boost hat eine Format-Bibliothek, die es Ihnen ermöglicht, die Ausgabe wie das alte C printf (), aber mit Typ-Sicherheit von C ++ zu formatieren.

Denken Sie daran, dass Sie mit dem alten C printf () eine Feldbreite angeben konnten. Dieser Platz füllt das Feld, wenn die Ausgabe zu klein ist (beachten Sie, dass es nicht mit übergroßen Feldern zurechtkommt).

%Vor%     
Martin York 20.09.2009 00:31
quelle
3

Gib auf den Tabs auf. Sie sollten in der Lage sein, io-Manipulatoren zu verwenden, um die Feldbreite, das Füllzeichen und das Format-Flag festzulegen (um die linke oder rechte Ausrichtung zu erhalten). Verwenden Sie die gleichen Werte für die Überschriften wie für die Daten, und alles sollte gut herauskommen.

Achten Sie auch darauf, dass Sie Rating und Acres in Ihrem Beispiel gewechselt haben.

    
Adrian McCarthy 20.09.2009 00:09
quelle

Tags und Links