# c + farben



## murdi (24. Januar 2002)

hi ho, ich bins ma wieder. 

habe folgende frage : wie kann ich mit c zb meine schriftfarbe ändern ??

ich weiss das man zu eine besondere include brauch aber ka welche und par andere befehel sind auch von nöten.

über hilfe würd ich mich sehr freuen !


----------



## Xeragon (24. Januar 2002)

Ich nehmen mal an, dass du dich dabei auf eine Konsole beziehst. Verwende dazu die WinAPI-Funktion ::SetConsoleTextAttribute().
Falls du ein Beispiel brauchst, sags einfach.


----------



## murdi (24. Januar 2002)

jo nen beispiel wäre echt klasse !


----------



## Xeragon (24. Januar 2002)

Sodala, das wäre mal ne Minimalvariante, weitere (längere) Beispiele gibts in der MSDN:


```
#include <iostream>

#include <windows.h>

int main()
{
	HANDLE hStdOut;
	CONSOLE_SCREEN_BUFFER_INFO csbiScreen;
	WORD wOldColAttr;

	// HANDLE für stdout (Anm.: Error-Checking wäre hier angebracht)
	hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);

	// Alte Textfarbe abspeichern
	GetConsoleScreenBufferInfo(hStdOut, &csbiScreen);
	wOldColAttr = csbiScreen.wAttributes;

	// Text-Farbe auf blau & "leuchtend" setzen
	SetConsoleTextAttribute(hStdOut, FOREGROUND_BLUE | FOREGROUND_INTENSITY);

	// Hier kann nun per WinAPI (WriteFile(), ReadFile(), WriteConsole(), ReadConsole())
	// oder per "Standard"-Methoden gearbeitet werden.
	std::cout << "Es ist blau!!" << std::endl;

	// Alte Text-Farbe wiederherstellen
	SetConsoleTextAttribute(hStdOut, wOldColAttr);

	return 0;
}
```


----------



## murdi (27. Januar 2002)

thx , nur ich meinte c ! 

kann mir da wer helfen ?? will nur die schriftfarben ändern damit a bissel mehr freude reinkommt !


----------



## Christian Fein (29. Januar 2002)

hehe C+ Farben ist nen guter Threadname 
nun versteh ich wie jemand auf die Idee kam nach der 
Programmiersprachen C / C++ oder *C+* zu fragen


----------



## Xeragon (2. Februar 2002)

In C gehts genauso, verwend halt statt der C++ I/O-Streams stdio (printf)


----------



## five (7. Februar 2002)

hi

man kann die farbe eines textes auch durch 
steuerzeichen bestimmen:
das steuerzeichen ist dann nach dem ANSI
standard
undzwar:
ESC[#(;#...)m

#=3x:Vordergrundfarbe
#=4x:Hintergrundfarbe
      x=0:Schwarz
      x=1:Rot
      x=2:Grün
      x=3:gelb
      x=4:Blau
      x=5:Magenta
      x=6:Cyan
      x=7:Weiß

!!!!Achtung:
Damit die Steuerzeichen wirksam sind,
muß ein entsprechender Bildschirmtreiber
geladen sein.
Unter win9x z.b. gescheiht das durch
folgende Zeile in der Datei
CONFIG.SYS:
DEVICE = C:\Windows\Command\Ansi.sys
-----------------------------------------
ich hoffe dir hat das geholfen
five


----------



## Xeragon (7. Februar 2002)

> _Original geschrieben von five _
> *!!!!Achtung:
> Damit die Steuerzeichen wirksam sind,
> muß ein entsprechender Bildschirmtreiber
> ...



Deswegen ist es im Normalfall besser die WinAPI zu verwenden...


----------

