Einen Text in printf grün und rot erscheinen lassen

Einen Text in printf grün und rot erscheinen lassen


Linux gcc 4.4.1


Ich habe die folgende fprintf-Anweisung und möchte das OK als grün und das FAILED als rot haben. Ist das möglich?


if(devh == -1)
{
fprintf(stderr, "Device [ FAILED ]\n");
}
else
{
fprintf(stderr, "Device [ OK ]\n");
}

Vielen Dank für alle Vorschläge,


Antworten:


Sie sollten wahrscheinlich eine Bibliothek wie ncurses verwenden, um mit Terminal umzugehen.


Alternativ könnten Sie unter Linux einige Konsolen-Escape-Sequenzen verwenden, wie zum Beispiel:


printf ("\033[32;1m OK \033[0m\n");

(in diesem Fall steht 32 für grün), aber es ist weder portabel noch elegant.