Written by: thempra on 16/01/2013 @ 08:00
Siempre que se empieza a desarrollar sobre C++, lo primero que se piensa es que es un entorno feo, aburrido y arcaico. Al cabo de un tiempo te das cuenta de la potencia y las maravillas que puedes llegar a conseguir con este lenguaje de programación, y por que sigue estando tan extendido.
Hoy vamos a ver como generar unas sencillas macros, que podemos incluir en nuestras librerías mas típicas, para poder mostrar la salida de debug coloreada, y diferenciar así entre de forma mas sencilla cada output de nuestro programa.
Con una simple linea podemos hacer nuestra salida coloreada:
#define DEBUG(…) do{fprintf(stderr,»33[34m»); fprintf(stderr, __VA_ARGS__); fprintf(stderr,»33[0m»);}while(0)
Para cambiar los distintos colores aqui os dejo una amplia gama:
#define RESET «33[0m»
#define BLACK «33[30m» /* Black */
#define RED «33[31m» /* Red */
#define GREEN «33[32m» /* Green */
#define YELLOW «33[33m» /* Yellow */
#define BLUE «33[34m» /* Blue */
#define MAGENTA «33[35m» /* Magenta */
#define CYAN «33[36m» /* Cyan */
#define WHITE «33[37m» /* White */
#define BOLDBLACK «33[1m33[30m» /* Bold Black */
#define BOLDRED «33[1m33[31m» /* Bold Red */
#define BOLDGREEN «33[1m33[32m» /* Bold Green */
#define BOLDYELLOW «33[1m33[33m» /* Bold Yellow */
#define BOLDBLUE «33[1m33[34m» /* Bold Blue */
#define BOLDMAGENTA «33[1m33[35m» /* Bold Magenta */
#define BOLDCYAN «33[1m33[36m» /* Bold Cyan */
#define BOLDWHITE «33[1m33[37m» /* Bold White */
Ya solo nos queda que cada vez que pretendamos usar dicha macro la llamemos mediante:
DEBUG(«Texto a mostrar»);
Catogories: embedded, GNU/Linux, Programacion