C bewegt den Cursor an den Anfang der aktuellen Zeile

8

Ich möchte die aktuelle Zeit (mit printf) an der gleichen Stelle drucken, aber ich möchte es in einer Endlosschleife machen, zB:

%Vor%

. Also bevor ich printf benutze, sollte ich den Cursor rückwärts in seine Startposition bewegen. Wie man es macht?

thx im Voraus

    
JosiP 05.03.2010, 13:14
quelle

4 Antworten

6

schreibe ein \ r

%Vor%     
nos 05.03.2010 13:17
quelle
6

Um den Cursor einfach an den Anfang der aktuellen Zeile zu bewegen, können Sie "\ r" drucken, was genau das tut. Beachten Sie, dass der alte Text nicht gelöscht wird. Achten Sie also darauf, ihn entweder zu überschreiben oder mit einem ANSI-Code zu löschen.

Auf Systemen, die ANSI / VT-Steuercodes verwenden, können Sie "\ 033 [1; 2H" drucken, um den Cursor zu positionieren. Es wird den Cursor bewegen und nichts auf dem Bildschirm drucken. Die Werte 1 und 2 sind die Zeile und die Spalte, also ändern Sie sie, um verschiedene Positionen zu verwenden.

Es gibt auch andere Codes für Farben und andere Dinge: Ссылка

Beachten Sie, dass keiner dieser Codes portabel ist und möglicherweise nicht auf allen Systemen funktioniert (vor allem funktionieren sie auf einigen Microsoft-Systemen nicht standardmäßig). Nicht unterstützende Systeme zeigen stattdessen etwas Müll auf dem Bildschirm an (den Code selbst).

    
Tronic 05.03.2010 13:19
quelle
3

Sie könnten es so machen (sehen Sie sich das \ r mit vielen Leerzeichen an!):

%Vor%     
schoetbi 05.03.2010 13:17
quelle
0

Es könnte funktionieren, ein "\ r" am Anfang der Zeile zu drucken.

    
Thomas Padron-McCarthy 05.03.2010 13:16
quelle

Tags und Links