Couleur c [Résolu]
A voir également:
- Couleur c
- Comment changer la couleur des messages sur instagram ✓ - Forum - Instagram
- Couleur messenger - Conseils pratiques - Messagerie instantanée
- Condition excel couleur - Conseils pratiques - Excel
- Changer de couleur de cheveux avec une photo ✓ - Forum - Graphisme
- Changer la couleur de la barre des taches windows 10 - Guide
2 réponses
[Dal]
- Messages postés
- 5455
- Date d'inscription
- mercredi 15 septembre 2004
- Statut
- Contributeur
- Dernière intervention
- 9 janvier 2021
Salut paul,
Pas en C standard.
Selon le système que tu utilises et le type de console, tu peux le faire avec différents moyens correspondants.
Sous Windows, pour la console cmd, cela peut se faire avec SetConsoleTextAttribute()
https://docs.microsoft.com/en-us/windows/console/setconsoletextattribute
Sinon, depuis quelques années, Microsoft a introduit dans son API une couche de compatibilité de son terminal avec les séquences d'échappement VT100 du monde Unix.
https://docs.microsoft.com/en-us/windows/console/console-virtual-terminal-sequences
Si tu es sur un système Windows récent, tu peux faire ceci :
Si tu es sous Linux, tu retires le
C'est toujours pas du C standard, mais au moins tu utilises des séquences d'échappement connues sous les systèmes POSIX (après un paramétrage de la console Windows).
Dal
Pas en C standard.
Selon le système que tu utilises et le type de console, tu peux le faire avec différents moyens correspondants.
Sous Windows, pour la console cmd, cela peut se faire avec SetConsoleTextAttribute()
https://docs.microsoft.com/en-us/windows/console/setconsoletextattribute
Sinon, depuis quelques années, Microsoft a introduit dans son API une couche de compatibilité de son terminal avec les séquences d'échappement VT100 du monde Unix.
https://docs.microsoft.com/en-us/windows/console/console-virtual-terminal-sequences
Si tu es sur un système Windows récent, tu peux faire ceci :
#include <stdio.h> #include <windows.h> #define RED_COL "\x1b[31m" /* ANSI rouge */ #define END_COL "\x1b[0m" /* réinitialiser */ int main(void) { /* paramétrage de la console CMD pour supporter les séquences * d'échappement VT100 */ HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); if (hOut == INVALID_HANDLE_VALUE) { return GetLastError(); } DWORD dwMode = 0; if (!GetConsoleMode(hOut, &dwMode)) { return GetLastError(); } dwMode |= ENABLE_VIRTUAL_TERMINAL_PROCESSING; if (!SetConsoleMode(hOut, dwMode)) { return GetLastError(); } /* ensuite on peut faire cela */ printf("Ceci est un texte en couleur normale, avec un mot en " RED_COL "rouge" END_COL ". Et hop.\n"); return 0; }
Si tu es sous Linux, tu retires le
#include <windows.h>et les lignes 8 à 25 et tu fais la même chose.
C'est toujours pas du C standard, mais au moins tu utilises des séquences d'échappement connues sous les systèmes POSIX (après un paramétrage de la console Windows).
Dal