texte coloré en utilisant printf en C
Je me demandais comment puis-je imprimer dans la console une couleur de texte? J'utilise eclipse win64 os. A-t-elle à voir avec le compilateur? Quelqu'un peut-il donner un exemple simple en C avec juste un bonjour tout le monde, texte en rouge ou n'importe quelle autre couleur?
source d'informationauteur BugShotGG
Vous devez vous connecter pour publier un commentaire.
Je sais que c'est incroyablement facile à faire en C++, mais j'ai trouvé ceci pour vous de regarder dans C:
Tous les commentaires vous aidera à trouver votre chemin à travers le code, j'espère que ça aide!
Si vous souhaitez imprimer en couleur de texte dans la console Windows, vous devrez utiliser l'API Windows. ANSI.sys aucun support n'est plus présent dans Windows.
Sous Linux, vous pouvez toujours utiliser des séquences d'échappement ANSI pour la couleur du texte.
Si vous êtes contraint à
printf()
ce qui nécessite la connaissance de la borne à laquelle vous écrivez. Les chances sont qu'il est un ANSI-style terminal, de sorte qu'il peut être fait. Unixcurses
(Linuxncurses
) bibliothèque gère ces informations dans un terminal de manière indépendante. Fondamentalement, vous aurez besoin de définir ou de fabrication de contrôle des chaînes de transformer le terminal enred
mode et puis reset de nouveau (mais comment savez-vous dans quel état elle se trouvait avant de le changer à l'écriture d'un texte en rouge?). Les bibliothèques mentionnées garder une trace de l'état de l'information, parmi beaucoup d'autres détails.Toutefois, si vous recevez les chaînes organisé, le code comme ceci fera l'affaire (plus ou moins):
La partie la plus difficile est de déterminer ce qui se passe dans les chaînes constantes (qui n'a pas besoin d'être réellement constante).
Tout cela signifie qu'il y a probablement un Windows-interface spécifique qui peut être utilisé pour faire le travail, mais qui ne concerne pas vraiment
printf()
pour contrôler les couleurs; vous appelez l'API Windows pour définir la couleur, puis d'écrire avecprintf()
puis d'appeler l'API de nouveau pour rétablir la couleur. Il y a probablement une fonction de requête pour vous permettre de trouver le réglage actuel, que vous utilisez avant de le changer.La console Java utilise la sortie standard qui est quel que soit votre système d'exploitation. Pour Windows, vous devez accéder à la Console API pour changer les couleurs. Pour Linux ou Mac, la console pourrait soutenir Des séquences d'échappement ANSI qui peut changer la console de couleurs via la sortie standard stdout.