Frage

Lassen Sie uns eine Situation haben, in dem das folgende Programm druckt einige 10 Zeilen #

for(i=0;i<10;i++)
prinf("\n#");

jetzt wie zurück bis 5. Zeile gehen und dass # bearbeiten und die Farbe ändern, ohne den Bildschirm zu Löschen oder die folgenden 5 Zeilen Clearing?

Ich habe versucht,

window(5,0,20,20);
textcolor(GREEN);
cprintf("#");

aber es ist nicht bearbeite, dass man, aber es wird Druck auf der Seite des ursprünglichen one.why?

gibt es eine andere Art und Weise es und das Ändern der Farbe des bereits gedruckten Text dynamisch zu tun? bitte helfen me..my Umgebung ist Turbo c auf Windows

War es hilfreich?

Lösung

Fensterfunktion wird in der Regel ein Fenster aus dem ersten beide Koordinaten Pixeln d.h, in Ihrem Beispiel (5,0) zum Pixel weist durch die nächsten 2 Koordinaten erstellen. so sollte Ihr Programm arbeiten

probieren Sie es aus oder anderes verwendet gotoxy ()

Andere Tipps

Es sieht aus wie Sie printf und eine andere Ausgabebibliothek mischen - dies wird nicht empfohlen. Printf erwartet, um ein Zeichen Endgerät gesendet werden, während die Ausgabebibliothek in Frage falsly kann davon ausgehen, dass es einen exklusiven Zugriff hat (und vielleicht schlecht benehmen.)

Basierend auf einer Funktion, die Sie verwenden wahrscheinlich conio.h. Die Dokumentation kann hier wird, mit einem Inhaltsverzeichnis jeweils zeigen, verfügbare Funktion. Von diesem Index, sollten Sie die Funktion sofort beschmutzen können.

Die Fensterfunktion nicht tut, was Sie es haben wollen, da sie nur den Bereich legt, in dem der Cursor Text ändern kann - es nicht den Cursor bewegen, können Sie die anderen Bibliotheksfunktionen verwenden müssen.

-1: Einige Tipps für die Buchung Hausaufgaben Fragen:

1) Holen Sie sich die Frage richtig! Der entsandte Code nicht wie die Beschreibung lautet:

 for(i=0;i<10;i++)
    prinf("#");

Dies druckt 10 # Zeichen auf einer Linie, da es keinen End-of-Line-Charakter. Die ursprüngliche Beschreibung spricht über „Druck 10 Zeilen.“

2) Geben notwendige Details: Was Umgebung verwenden Sie: Windows? Linux? Was für Compiler? Ist das ein Fenster oder textbasierte Umgebung?

3) STFW vor der Veröffentlichung. Suchen Sie nach "ANSI Escape-Sequenzen" oder "den Cursor positionieren."

maybe-

cprintf("\b#");

'b' ist für Backspace

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top