No właśnie jak wypisać na ekranie tekst kolorowy? W miarę możliwości proszę o rozwiązanie przy użyciu nagłówka iostream, gdyż ten znam, a uczyć się nowego nie mam ochoty :-P
Iostream nie udostępnia żadnych funkcji "kolorujących". Jeżeli działasz po windowsem to albo wykorzystaj bibliotekę conio2 albo funkcje z WinApi (GetStdHandle() i SetConsoleTextAttribute()).
jesli linux to : man console_codes
tu masz cos dokładniej : http://argon.kul.lublin.pl/~wawryl/zad4/index.php?plik=LEKCJA9.TXT
@Drax
iostream jest standardowym nagłówkiem C++, gdzie brak takich głupot jak kolorowanie. Programy pod konsole zazwyczaj nie mają wyglądać tylko działać...
DzieX napisał(a)
@Drax
iostream jest standardowym nagłówkiem C++, gdzie brak takich głupot jak kolorowanie. Programy pod konsole zazwyczaj nie mają wyglądać tylko działać...
Widzisz kolego, kolorowanie potrzebne mi nie ze względu na "wyglądanie", ale właśnie dla "działania". W tekście wyrzucanym przez program czerwone "K" ma być czymś zasadniczo różnym od dajmy na to zielonego "K" i ciężko byłoby to logicznie obejść. A nie jestem jeszcze na tyle obeznany w temacie, żeby bawić się w GUI :p
jesli operujesz na linuksie, zaznajom sie z kodami sterujacymi (tzw. ansi-kolorki)
wyglada to mniej wiece tak, ze np. wypisanie czerwonego K to:
printf("\e[0;31m");//a teraz na czerwono
printf("K");
printf("\e[0;0m");//powrot do normy
mozna zmieniac kolory tekstu, tla, mozna zmieniac jasnosci kolorow (jasno/ciemnoczerwony), mozna ustawic blinka..
ale to ruszy tylko jak terminal jest z takim kodowaniem kompatybilny! na linuksie wiekszosc jest. na windozie - nogo. jeszcze za czasow win98 i winme mozna sobie bylo zaladowac w dosie pliczek ansi.sys, ale terazniejsza nt'owa konsola to tylko tak jak mowil reVis - SetConsoleTextAttribute
Gdzies kiedy znalazlem pod windowsa cos takiego, uzywa sie tego calkiem fajnie ;)
enum Kolor { DBLUE=1,GREEN,GREY,DRED,DPURP,BROWN,LGREY,DGREY,BLUE,LIMEG,TEAL,
RED,PURPLE,YELLOW,WHITE,B_B };
void kol(int kolor)
{
HANDLE hcon = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hcon,kolor);
//wywolanie --- kol(nr.koloru)
//7-standartowy
//9-niebieski
//10-zielony
//11-jasny_niebieski
//12-czerwony
//13-fiolet
//14-zolty
//15-bialy
}
Wywolanie kol(nr.koloru); i text jest kolorowany w tym kolorze powrot do stadartowego koloru poprzez wywolanie kol(7);
Dziękuję, ale mnie chodzi raczej o sposoby pod Linuksy :p
pod linuksy to kody sterujące ansi, które podał quetzalcoatl.
http://www.bluesock.org/~willg/dev/ansi.html
joł! dzieki za linka, zgubilem go jakeis pol roku temu :}