Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

printf et couleur sous dos (langage c))




  1. #1
    danyvio

    printf et couleur sous dos (langage c))

    Bonjour à tous ! Je développe un petit jeu en c, destiné à être joué sous msdos.
    J'aimerais agrémenter quelques sorties console avec de la couleur. J'ai inclus dans un programme de test des séquences :

    printf ("\033[34;01mBonjour\033[00m\n");

    printf ("\x1b[34;01mBonjour\033[00m\n");

    Il me sort la même chose en noir le code escape étant remplacé par un ? encadré.

    Le contexte : #include <stdio.h> en entête de programme
    ordi sous windos10 famille.

    Compilateur c : Digital Mars
    Merci d'avance

    -----

    On trouve des chercheurs qui cherchent ; on cherche des chercheurs qui trouvent !

  2. Publicité
  3. #2
    PA5CAL

    Re : printf et couleur sous dos (langage c))

    Bonjour

    Malheureusement, par défaut, l'invite de commande de Windows 10 n'interprète pas les séquences ANSI figurant dans le texte à afficher.

    Pour contourner ce problème, on peut utiliser la fonction SetConsoleTextAttribute() de l'API Windows. Par exemple :

    Code:
    #include <windows.h>
    #include <stdio.h>
    
    int main()
    {
      SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0xEC); // texte rouge (C) sur fond jaune (E)
      printf("Salut ! \n");
      SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F); // texte blanc (F) sur fond noir (0)
      return 0;
    }
    Cela fait un moment que l'invite de commande de Windows n'a plus grand chose à voir avec MSDOS. Si le but est de développer un programme pour un PC tournant sous système d'exploitation MSDOS (ou sous l'un des systèmes d'exploitation DOS compatibles), alors il vaudrait mieux utiliser un émulateur sous Windows afin de reproduire son comportement.

  4. #3
    danyvio

    Re : printf et couleur sous dos (langage c))

    Merci Pascal ! Je vais essayer.
    On trouve des chercheurs qui cherchent ; on cherche des chercheurs qui trouvent !


  5. #4
    danyvio

    Re : printf et couleur sous dos (langage c))

    Re-merci PASCAL, ça marche !!!
    On trouve des chercheurs qui cherchent ; on cherche des chercheurs qui trouvent !

Discussions similaires

  1. Gérer quasiment toute la RAM sous Linux langage c
    Par Computer Mail dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 14/04/2017, 13h43
  2. Détermination de la couleur d'un colorant (langage C, Codewarrior)
    Par Shadowlugia dans le forum Programmation et langages, Algorithmique
    Réponses: 7
    Dernier message: 09/10/2012, 13h08
  3. Langage C - printf & puts : différence ?
    Par tango88 dans le forum Programmation et langages, Algorithmique
    Réponses: 3
    Dernier message: 31/01/2012, 22h51
  4. Sous programme en langage C
    Par spilgs dans le forum Logiciel - Software - Open Source
    Réponses: 8
    Dernier message: 06/06/2010, 10h25
  5. Langage C sous windows
    Par Teaspoon dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 29/09/2008, 08h21