Principe : les codes ANSI

Les codes ANSI sont des séquences spéciales envoyées au terminal pour changer la couleur du texte, du fond, ou pour ajouter des effets (gras, clignotant, etc.).

Exemple de code couleur :

printf("\033[31mTexte rouge\033[0m\n");
  • \033[ → début de la séquence (équivaut à ESC)
  • 31m → rouge
  • 0m → réinitialise les couleurs

Couleurs de base (texte)

CodeCouleurExemple
30Noir\033[30m
31Rouge\033[31m
32Vert\033[32m
33Jaune\033[33m
34Bleu\033[34m
35Magenta\033[35m
36Cyan\033[36m
37Blanc/gris\033[37m

Exemple simple avec couleur :

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

int main() 
{
    printf("\033[32m Succès !\033[0m\n");    /* Vert */
    printf("\033[31m Erreur !\033[0m\n");     /* Rouge */
    printf("\033[33m Attention !\033[0m\n");  /* Jaune */
    return EXIT_SUCCESS;
}
etudiant@ordi:~/Works/TP3_C/color$ ./colors
 Succès !
 Erreur !
 Attention !

💡 Astuce bonus : raccourcis avec #define

#define RED     "\033[31m"
#define GREEN   "\033[32m"
#define YELLOW  "\033[33m"
#define BLUE    "\033[34m"
#define RESET   "\033[0m"

printf(GREEN "Bravo !" RESET "\n");

Créer un fichier header couleurs.h

fichier couleurs.h , placer le dans le répertoire de votre code .

.
├── couleurs.h
├── test
└── test.c
/* couleurs.h */

#ifndef COULEURS_H
#define COULEURS_H

/* Texte en couleur */
#define RESET     "\033[0m"
#define NOIR      "\033[30m"
#define ROUGE     "\033[31m"
#define VERT      "\033[32m"
#define JAUNE     "\033[33m"
#define BLEU      "\033[34m"
#define MAGENTA   "\033[35m"
#define CYAN      "\033[36m"
#define BLANC     "\033[37m"

/* Texte gras */
#define GRAS      "\033[1m"

/* Fond coloré */
#define BG_ROUGE   "\033[41m"
#define BG_VERT    "\033[42m"
#define BG_JAUNE   "\033[43m"
#define BG_BLEU    "\033[44m"
#define BG_CYAN    "\033[46m"

#endif

Exemple d’utilisation dans un fichier .c

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

int main() 
{
    printf(VERT "Succès !" RESET "\n");
    printf(ROUGE "Erreur !" RESET "\n");
    printf(BLEU GRAS "Texte en bleu et en gras" RESET "\n");
    return EXIT_SUCCESS;
}
etudiant@ordi:~/Works/TP3_C/color$ ./test 
Succès !
Erreur !
Texte en bleu et en gras
etudiant@ordi:~/Works/TP3_C/color$ 

⚠️ Compatibilité

  • ✅ Fonctionne dans : Linux, macOS, Windows Terminal, Git Bash, VS Code, etc.