printf Textfarbe definieren

xo3

Grünschnabel
Hallo Zusammen

Ich wollte fragen ob es möglich ist im c (nicht c++) die Farbe von einzelnen texten selbst zu definieren? Da ich es bislang nicht fertig gebracht habe, da spätestens nachdem ich denn ersten Text mit in der richtigen Farbe ausgegeben habe, wird bei mir die zweite Eingabe auf alles vorherige übernommen. Hier ein Beispiel:

system("color 0F")
printf("schwarz");

system("color 0C")
printf("rot");

Kann mir hier vielleicht jemand bei diesem Problem weiterhelfen?

mfg,
xo3
 
Hi,

für Windows kannst du "SetConsoleTextAttribute" nutzen. Die Farbwerte kann man im cmd mit "color help" nachlesen.

C++:
HANDLE hConsole;
hConsole = GetStdHandle (STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, color);
printf("Bright red text\n");
dazu die "windows.h" nutzen.

Unter Linux geht das etwas einfacher mit den Escape-Sequenzen als Beispielcode z.B.

C++:
printf("\033[0;%dmHello!\033[0m\n", i);

Mögliche Werte sind hier zu lesen: http://www.linuxhowtos.org/Tips and Tricks/ansi_escape_sequences.htm

Ich hatte mal irgendwo eine Seite gehabt, die das bisschen besser erklärt, kann diese aber gerade nicht mehr finden. Ich hoffe es hilft dir trotzdem.

Grüße,
Jennesta
 
Zurück