Probleme avec printf() ???

gacki Messages postés 120 Statut Membre -  
karirovax Messages postés 3584 Statut Membre -
Bonjour tout le monde :

je veux savoir si il y a une façon d'écrire d'autre langue en langage C

c'est-à-dire par exemple quand j'ai essayer d'écrire printf("mot en lettre chinoise ");
elle n'a pas marcher c'est quoi le problème ? et comment le résoudre ? j'ai lus dans un site des choses sur des caractères large ou quelque chose comme sa, mais j'ai pas vraiment bien comprit comment les utiliser. es
et merci d'avance.

6 réponses

  1. karara20
     
    vous pouvent donner plus des explcation pour que je t'ide
    0
  2. karara20 Messages postés 58 Statut Membre 9
     
    0
    1. gacki Messages postés 120 Statut Membre
       
      karara :) c'est pas vraiment sa se que je cherche par ma question

      se que je veux savoir c'est comment afficher des caractères de l'unicode comme l'arabe le chinois et tout ...

      je serai tres content si quelqu'un pourrai me donné un exemple d'utilisation des caractère unicode

      et merci d'avance :)
      0
  3. gacki Messages postés 120 Statut Membre
     
    se que je veux dire de ma question si je veux afficher le mot ??? comment je fait quelle fonction vas me faire se travail car la fonction printf ne le fait pas elle ne connaît pas se genre de caractère et merci ;)
    0
    1. gacki Messages postés 120 Statut Membre
       
      pour Monsieur karirovax j'ai pas vraiment bien comprit la repense qui existe dans le lien que vous m'avez donné mais merci comme même :)
      0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. karirovax Messages postés 3584 Statut Membre 215
     
    Re: salut

    Suivi les liens qui se trouvent dans le lien qui je te donne ( ce qui concerne "unicode" )

    mais en tout cas je vous donne quelques solutions de bricole:

    Au lieu d'utiliser : char la remplacer par wchar_t
    et pour cout par wcout
    fstream par wfstream
    ... et ainsi de suite

    c'est à dire d'ajouter la lettre w de chaque fonction/objet du C/C++
    0
  6. [Dal] Messages postés 6122 Date d'inscription   Statut Contributeur Dernière intervention   1 108
     
    On peut faire comme cela :

    #include <stdio.h>
    
    int main()
    {
        /* I can write in Chinese */
        printf("\u6211\u53EF\u4EE5\u5199\u5728\u4E2D\u56FD\n");
    
        return 0;
    }

    Il faut disposer d'une console pouvant afficher de l'unicode.

    Dal
    0
    1. gacki Messages postés 120 Statut Membre
       
      merci Dal pour votre réponse mais j'ai reçu l'erreur suivant :
      attention : noms de caractère universel sont seulement valides en C++ et C89
      0
    2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      gacki,

      C99 tu veux dire ;-). Et c'est normal, cette notion n'a été intégrée qu'en C99.
      Utilise plutôt wprintf(L"");
      0
    3. karirovax Messages postés 3584 Statut Membre 215
       
      Re:

      Oui vous avez raison comme j'ai mentionné en haut qu'il faut ajouter un w avant car le C++ contient un environnement sous dos qui refuse les écritures Unicode mais la solution d'ajouter un w avant les fonctions ça va marcher. Sinon un autre langage comme Python qui va jouer à Nikel :)
      0
    4. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Oui vous avez raison comme j'ai mentionné en haut qu'il faut ajouter un w avant
      Non justement en C++ tu n'as pas besoin ;-). C'est juste en C (C89).
      car le C++ contient un environnement sous dos
      Euh, le C++ contient pas d'environnement sous dos... Il appelle simplement le terminal.
      0
    5. karirovax Messages postés 3584 Statut Membre 215
       
      Re:

      Euh, le C++ contient pas d'environnement sous dos... Il appelle simplement le terminal.

      Oui, je sais qu'il s'appel terminal ( shell ) mais je veut pas compliquer ceci pour des novice comme la mienne :)
      0