Comment convertir 'wchar_t *' to 'const char *'

Comment puis-je convertir 'wchar_t *' à 'const char *' ?

à l'aide de C++ MFC VS2010.

Merci.

  • Si c'est de la MFC, avez-vous vraiment une CString? Je suis un peu de versions out-of-date, mais ils ont utilisé un opérateur de cast pour LPCSTR sur le CString types de faire la conversion pour vous. Vous pouvez même être en mesure de simplement construire un CStringA de la grande chaîne et avoir la convertir pour vous.
  • La technique de la réponse à cette question est rarement utile dans l'isolement. Pourquoi avez-vous besoin de faire cela? E. g. si c'est pour passer un pointeur à travers une interface de rappel, un simple cast est OK.
  • J'ai besoin de remplir la structure avec CHAR Nom[256]; mais j'ai wchar_t * au lieu de char* .
  • OK - qui structure? Il n'y a vraiment pas une grande chaîne de version de la structure et de l'API que vous pouvez utiliser à la place? Vous ne devriez vraiment pas être à l'aide de Caractères si vous pouvez l'éviter - vous serez frappé de problèmes avec l'internationalisation, etc.
  • Je suis sûr que j'ai besoin d'utiliser exactement les caractères là à cause de la compatibilité
  • Eh bien, tout ce qui se passe à utiliser que Name aura quelques attentes. En fait, une exception est que vous ne passez pas 大日本帝国. CHAR[256] signifie 8x256 bits, il y a certainement plus que vous savez à ce sujet.

InformationsquelleAutor cnd | 2011-10-20