Instructions system langage C

Résolu/Fermé
Utilisateur anonyme - 8 mars 2009 à 21:19
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 10 nov. 2011 à 20:00
Bonjour,
Je suis en train d'apprendre le langage C et j'ai découvert que l'on pouvait avoir la liste des instructions system( ) en mettant l'instruction system("HELP"); dans le code source du programme.
J'utilise l'IDE "Dev C++". Dans cette liste d'instructions, j'ai trouvé l'instruction system("COLOR"); qui est censé me permettre de modifier la couleur de l'arrière plan et du premier plan de la console. Malheureusement, cette instruction ne marche pas et je ne sais pas pourquoi. Merci d'avance pour votre aide !

KaibaSeto

4 réponses

system("color cf");
Pour changer les couleurs initiales de la console.
(ou c est la valeur du fond, f est la valeur des caractères)

0 Noir
1 Bleu foncé
2 Vert
3 Bleu gris
4 Marron
5 Pourpre
6 Kaki
7 Gris clair
8 Gris
9 Bleu clair
A Vert clair
B Cyan
C Rouge
D Rose
E Jaune
F Blanc
il marche avec stdlib.h
7
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 7 812
10 nov. 2011 à 20:00
Ceci ne marche a priori que sous windows, donc bof... D'où l'intérêt de passer par une librairie comme ncurses qui permet de s'affranchir du système d'exploitation et d'avoir ainsi un programme portable.

De manière générale il faut éviter de faire un appel système à une commande spécifique à un système d'exploitation, surtout quand il existe des solutions pour rester portable...
0
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 7 812
9 mars 2009 à 01:01
En fait ce que tu dis est spécifique à windows. Tu peux taper tes commandes directement dans une console ms dos (démarrer, exécuter, cmd). Pour régler les couleurs dans un terminal, le mieux est d'utiliser une librairie genre ncurses.
https://fr.wikipedia.org/wiki/Ncurses

Bonne chance
0
Utilisateur anonyme
9 mars 2009 à 15:56
Merci pour votre réponse mamiemando, je ne connaissais pas cette librairie. Je vais l'étudier attentivement. J'ai néanmoins trouvé entre-temps une solution peut-être plus simple pour afficher de la couleur dans la console.
Il suffit de mettre #include <windows.h> en haut du code source puis d'ajouter, avant les "printf" dont on souhaite colorer le texte, l'instruction Color(0,0);. Il faut bien sur créer une fonction d'affichage de couleurs. Si vous voulez voir la façon de faire, je vous conseille d'aller voir sur le tutoriel sur ce site :

https://openclassrooms.com/fr/courses

Voilà ! Donc merci encore et @+ sur les forums.
0
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 7 812
9 mars 2009 à 19:59
Oui oui c'est possible, mais ton programme ne fonctionnera correctement que sous windows. L'intérêt de ncurses c'est de s'affranchir de la plate-forme. Car de la même façon sous linux tu as des séquences d'échappement pour colorer ton texte.
0