1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
#define NOIR "30"
#define ROUGE "31"
#define VERT "32"
#define JAUNE "33"
#define BLEU "34"
#define MAGENTA "35"
#define CYAN "36"
#define BLANC "37"
#define FOND_NOIR ""
#define FOND_GRIS "40"
#define FOND_ROUGE "41"
#define FOND_VERT "42"
#define FOND_JAUNE "43"
#define FOND_BLEU "44"
#define FOND_MAGENTA "45"
#define FOND_CYAN "46"
#define FOND_BLANC "47"
#define VIDEO_NORMAL "1"
#define VIDEO_INVERSE "7"
void cprintf(char *colour, char *bgcolour, char *VideoMode, char *format,...){
va_list args;
va_start(args,format);
char *ptr = format;
printf("\E[%d;%d;%dm",VideoMode,colour,bgcolour);
while (ptr - format < strlen(format)){
if (*ptr == '%'){
ptr++;
switch(*ptr){
case '%':
printf("%%");
break;
case 'd':
case 'i':
printf("%d",va_arg(args, int));
break;
case 'c':
printf("%c",va_arg(args, int));
break;
case 's':
printf("%s",va_arg(args, char *));
break;
case 'g':
printf("%g",va_arg(args, double));
break;
case 'f':
printf("%f",va_arg(args, double));
break;
}
ptr++;
}else{
printf("%c",*ptr++);
}
}
printf("\E[0m");
va_end(args);
} |
Partager