IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SL & STL C++ Discussion :

Cout: Accents et formatage


Sujet :

SL & STL C++

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 14
    Par défaut Cout: Accents et formatage
    Salut, je débute en C/C++, et je souhaiterais afficher du texte accentué avec cout mais impossible de trouver comment faire sur le web, et pourtant j'ai cherché, y a t'il un moyen ?

    J'aimerais aussi savoir si il existe une méthode permettant d'éviter que mes mots soient coupés quand ils se trouvent sur le bord de la fenetre console windows, par exemple lorsque je fais une très longue phrase, le mot le plus au bord est coupé (un bout sur la ligne, la fin du mot sur la suivante).

    merci d'avance!

  2. #2
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 14
    Par défaut
    Pour la console windows, peut etre que ca peut t'aider
    http://c.developpez.com/faq/vc/?page...ConsoleWindows
    Pour les accents, il faut faire une conversion. Voici le lien qui se retrouve dans les faq http://c.developpez.com/faq/vc/?page=Divers#AnsiToOem

  3. #3
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    Hum... Ca ne parle pas des solutions C++ pour détourner cin et cout. (essaye avec la recherche avance). Ni que de toutes façons, ce n'est pas forcément important et encore moins pertinent pour un débutant.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  4. #4
    Invité
    Invité(e)
    Par défaut
    La meilleure solution serait à mon avis de se recoder une console "perso" avec SDL par exemple, parce que là, techniquement, ça va être dur.
    Tu dois avoir moyen, en "traduisant" les caractères accentués (mais je sais pas exactement comment) et en gérant toi-même les retours à la ligne (tu comptes les caracs et tout).

  5. #5
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    Argh ! Recoder une console pour un truc si simple !

    Voir par exemple le thread http://www.developpez.net/forums/viewtopic.php?t=254466 obtenu avec la recherche avancée...
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  6. #6
    jmv
    jmv est déconnecté
    Membre chevronné Avatar de jmv
    Profil pro
    Enseignant
    Inscrit en
    Mai 2004
    Messages
    395
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mai 2004
    Messages : 395
    Par défaut
    Citation Envoyé par remram44
    La meilleure solution serait à mon avis de se recoder une console "perso"
    A mon avis faut recoder windows

    ok je sort

  7. #7
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par jmv
    A mon avis faut recoder windows
    Ca s'appelle linux et ça marche très bien... D'ailleurs dans la console linux tu auras les accents sans aucun problème

    Regarde, c'est pas beautiful ?
    http://img203.imageshack.us/img203/4017/term9nj.png

    Désolé pour le troll...


    Pour revenir au sujet, si t'as besoin d'afficher du texte d'une manière un peu plus potable, réécrire une interface soi-même me semblait une bonne idée. En effet, la console affiche simplement ce qui "passe" par la sortie standard (stdout), et n'est pas faite pour ce genre d'affichage. Tu dois aussi pouvoir obtenir une jolie fenêtre genre bloc-note avec l'API windows, qui devrait être plus pratique (mais après je sais pas ce que tu veux faire).

  8. #8
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    C'était un joli troll, mais c'est dû au fait que les unixoides n'aient jamais été basés sur le charset OEM (CP-850).

    Windows a été obligé d'utiliser des consoles OEM pour garder un minimum de compatibilité avec les programmes DOS...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 14
    Par défaut
    Citation Envoyé par JolyLoic
    Argh ! Recoder une console pour un truc si simple !

    Voir par exemple le thread http://www.developpez.net/forums/viewtopic.php?t=254466 obtenu avec la recherche avancée...
    j'ai testé ton header et ton fichier source, ça marche nickel pour mon projet, donc je vais prendre ça je pense, le CharToOem n'est pas adapté à mon projet car ça necessite de recopier chaque morceau de texte dans 2 variables, tandis que la version de JolyLoic je l'inclue une seule fois au début de mon projet et ça convertit tout seul le texte de tous mes cout sans que j'ai à m'en soucier

    pour l'affichage des lignes de texte mieux formatées, faut que j'explore le header conio, mais bon je crois que je vais m'en passer

  10. #10
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Tu sais, en mode non-unicode, tu n'as pas besoin de recopier la chaîne: La version non-OEM peut la convertir sur place...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  11. #11
    Membre éclairé Avatar de gelam
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2003
    Messages : 69
    Par défaut
    Quand j'ai ce genre de problème c'est dans le cadre d'exercices de programmation... et je ne m'en occupe pas.
    Si c'est vraiment nécessaire j'utilise l'éditeur DOS (edit) pour coder mes chaînes de caractères accentuées (en dur dans le code)

    C'est parceque tu édite avec de l'ANSI que tu affiche avec de l'ASCII que tu as ces problèmes.

  12. #12
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    ce n'est pas une question d'ASCII (les caractères ASCII sont les mêmes pour pratiquement tous les charsets ANSI) mais de caractères NON-ASCII (strictement supérieurs à 127).
    Ici, c'est la codepage qui joue.

    Les consoles DOS étaient en CP-850 alias OEM, Windows est en CP-1252 (Occidental, avec les accents)

    Enfin oui, pour éditer en ANSI et afficher en OEM, il faut passer par une conversion. Généralement, quand je programme spécifiquement pour DOS ou pour Win32 console, je tape directement les chaînes en OEM
    (alt+0130 = é, alt+0136 = ê, alt+0138 = è, alt+0133 = à, alt+0144 = É,
    alt+0248 = °, sans compter les fameux line-drawing characters (186,205,200,201, etc)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. Problème de formatage d'accent
    Par gotcha5832 dans le forum Langage
    Réponses: 2
    Dernier message: 27/08/2009, 03h15
  2. accent php formatage bizarre pas si simple !
    Par iris15 dans le forum Langage
    Réponses: 2
    Dernier message: 22/04/2008, 11h55
  3. [Tableaux] Formatage d'URL et accents
    Par Istrella dans le forum Langage
    Réponses: 2
    Dernier message: 02/01/2008, 19h49
  4. Réponses: 3
    Dernier message: 12/12/2007, 20h31
  5. [Système] Formatage des accents
    Par johandev dans le forum Langage
    Réponses: 3
    Dernier message: 29/12/2006, 18h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo