Colorear texto en consola con C/C++

Poisonous

Hola,
He estado mirando y no veo ninguna manera de colorear texto usando librerias estandar. Lo unico que se me ocurrio y no parecio funcionar fue usar system + echo.

Alguien sabe alguna manera? no me sirven librerias no estandar (conio, allegro, etc) pq es para practicas y las entrego en los pcs de la facultad, los cuales dudo mucho que las tengan.

Gracias

elkaoD

Pues hay unos códigos de control ANSI que hacen que printf printée (:P) con colores y tal. He estado buscando y no los encuentro. Si eso luego edito.

EDIT: Los he encontrado donde menos pensaba, en la referencia de un cliente de MUDs en texto :)

http://pueblo.sourceforge.net/doc/manual/ansi_color_codes.html

Aquí algo más en profundidad, explicando no sólo códigos de control de color si no todos en general:
http://www.termsys.demon.co.uk/vtansi.htm

En Windows y DOS hay que tener cargado el driver ANSI.SYS, pero no suele ser problema.

JuAn4k4

En Linux y Unix te sirven las secuencias de escape.

Con Borland C te puedes programar la rutina en ASM para pintar un caracter con colorcete.

LOc0

#2 + ejemplillo para vagos:

#include <stdio.h>
#include <stdlib.h>

int main()
{
	int color, tipo;
	char *colores[8]={"NEGRO", "ROJO", "VERDE", "AMARILLO", "AZUL", "MAGENTA", "CYAN", "BLANCO"};
	
for(tipo=0; tipo<=1; tipo++)
	for(color=30; color<=37; color++)
		printf("\033[%d;%dm%s%s \\033\[%d;%dm\n", tipo, color, colores[(color-30)], tipo?" (negrita)":"", tipo, color);

printf("\033[0m\nRESET \\033\[0m\n\n");

return 0;
}

Salu2 ;)

Poisonous

Gracias a todos, me voy a printear un rato ;)

B

y recordar en el "dado" q creé en C con colores... q poco busca la peña hoy en dia xDDDDDDDDDD

elkaoD

En WinXP no funciona, no carga el driver ANSI por defecto :(

Merkury

Si que funciona en XP yo en clase lo utilizaba con WinXP SP2
y era asi:

 
             textcolor( <COLORQUESEA> )
             cprintf( "<lacadenaquesea"> )

Y en la ayuda del Textcolor tienes la lista de colores validos

Saludos.

Ninja edit:

Te he buscado un codigo con un poco de ejemplo ^:

http://tecnoamigo.es/2007/11/19/problema-de-compras-en-turbo-c/

Usuarios habituales