It's OS dependent.
Try this (it works on my linux console)
Code:
#define FORE_BLACK 30
#define FORE_RED 31
#define FORE_GREEN 32
#define FORE_YELLOW 33
#define FORE_BLUE 34
#define FORE_MAGENTA 35
#define FORE_CYAN 36
#define FORE_WHITE 37
#define BACK_BLACK 40
#define BACK_RED 41
#define BACK_GREEN 42
#define BACK_YELLOW 43
#define BACK_BLUE 44
#define BACK_MAGENTA 45
#define BACK_CYAN 46
#define BACK_WHITE 47
static int textc=FORE_WHITE;
void textcolor(int col)
{
printf("\033[1;%dm",col);
textc=col;
}
void backcolor(int col)
{
printf("\033[1;%d;%dm",textc,col);
}
// how to set text attribute such as blinking or inverse?
printf("\033[0m normal \033[0m\n");
printf("\033[5m blinking normal \033[0m\n");
printf("\033[7m inverse \033[0m\n");
printf("\033[7m\033[5m blinking inverse \033[0m\n");
printf("\033[2m suppress \033[0m\n");
printf("\033[1m bold \033[0m\n");