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

Windows Discussion :

[convertir TCHAR* en char*]


Sujet :

Windows

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Août 2005
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 411
    Points : 192
    Points
    192
    Par défaut [convertir TCHAR* en char*]
    Bonjour,

    savez-vous comment faire pour convertir une chaine TCHAR* en char* ?


    merci

  2. #2
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Bah, un TCHAR c'est déjà un char si UNICODE n'est pas défini, si UNICODE est défini TCHAR est défini à wchar_t. Ta question serait-elle comment convertir un wchar_t en caractère multioctet (représentable par un char dans le jeu de caractères ANSI) ? Il y a wcstombs (wide character string to multibyte string), déclarée dans stdlib.h. C'est du domaine du C standard, rien à voir avec Windows. La fonction mbstowcs réalise l'inverse.

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    TCHAR* en char*, c'est assez agaçant en C, ou en C++ sans MFC, ou en C++ avec un MFC trop vieux, car il n'y a rien de pratique pour ça.
    Typiquement en C, il faut du #ifdef :
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    TCHAR * chaineT = ... ;
    #ifdef UNICODE
    	/* TCHAR = wchar_t : convertir. */
    #else
    	/* TCHAR = char : copier ou réutiliser le pointeur. */
    #endif
    Alors qu'en C++ sous MFC récent, c'est tout simple:
    Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CString chaineT;
    CStringA chaineA(chaineT);
    //Et hop, chaineA est toujours une chaine de char.
    //On peut récupérer un const char* dessus,
    //ou utiliser GetBuffer() pour avoir un char*...
    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.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. convertir un TCHAR* en char *
    Par olibara dans le forum Langage
    Réponses: 11
    Dernier message: 07/09/2014, 12h49
  2. [SQL2K] Convertir un champ Char Vers un champ Date
    Par Sidi-Bou dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 29/01/2007, 08h45
  3. [unicode] Convertir CString en Char[]
    Par dacid dans le forum Visual C++
    Réponses: 7
    Dernier message: 31/05/2006, 09h22
  4. Convertir String en Char: comment?
    Par nmathon dans le forum Langage
    Réponses: 2
    Dernier message: 22/08/2005, 20h58
  5. Réponses: 13
    Dernier message: 06/03/2005, 15h21

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