Table ascii / langage C
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Table ascii / langage C



  1. #1
    VeryCuriousMan

    Table ascii / langage C


    ------

    Bonjour à tous,

    Je cherche à afficher un rond point sur un terminal et donc j'ai commencé à coder ceci :


    Code:
    #include <stdio.h>
    #include <stdlib.h>
     
    #define NB_LIN 33
    #define NB_COL 100
     
    void affichage () {
     
        char tab_multi[NB_LIN][NB_COL] = {{0}};
        int i, j;
     
        for (i=0; i<NB_LIN; i++) {
            for (j=0; j<NB_COL; j++) {
                if (i == 15 && (j < 31 || j > 65))
                    tab_multi[i][j] = 61;
            }
        }
     
        for (i = 0; i < NB_LIN; i++){
            for(j=0;j<NB_COL;j++){
                if (tab_multi[i][j] == 61){
                    printf("%c",tab_multi[i][j]);
                }
     
            }
    printf("\n");
    }
    }
     
        int main () {
     
            affichage ();
     
            return 0;
        }
    Mon problème ici se trouve au niveau des caractères ascii. Au delà de 127, mon terminal ne reconnait pas les caractères (je travaille sur ubuntu). Pourtant je voudrais absolument afficher des symboles comme "╗" par exemple et faire ça sous forme de tableau (je compte placer des voitures qui bougent dans mon rond point ensuite).
    Voilà si vous pouvez m'aider à trouver une astuce, je vous en remercie d'avance

    -----

  2. #2
    lou_ibmix_xi

    Re : Table ascii / langage C

    Au delà de 127, mon terminal ne reconnait pas les caractères
    C'est normal l'ASCII ne contient que 128 symboles, suivant ta plateforme, si le "char" est signé les valeurs négatives sont interdites. Si le char est non signé, ce sont les valeurs > 127 qui sont interdites (man ascii).

    Une remarque, tu as intérêt a utiliser les valeurs symboliques des char plutôt que leur valeur numérique, '=' c'est franchement plus compréhensible que 61 non ?

    Pour les caractères non-ASCII il faut utiliser un autre encodage que l'ASCII, soit de l'unicode, et le type C associé, "wchar_t", et toute la tripatouille de fonctions qui les manipulent (man wchar.h, man wprintf)

    Attention, si la portabilité est nécessaire, je pense qu'elle peut poser des problèmes...

Discussions similaires

  1. Réponses: 0
    Dernier message: 27/08/2015, 16h38
  2. conversion unicode -> Ascii + ascii étendu français VB.NET
    Par riri95 dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 06/12/2012, 14h20
  3. Ascii
    Par learning dans le forum Électronique
    Réponses: 2
    Dernier message: 17/10/2011, 23h42
  4. conversion ASCII-HEX langage c
    Par invite73838812 dans le forum Logiciel - Software - Open Source
    Réponses: 8
    Dernier message: 24/11/2010, 09h14