Question

S'il vous plaît, quelqu'un pourrait-il expliquer pourquoi cela ne fonctionne pas?

char *test = "test";
_TCHAR *szTest = CA2W(test);

Et dites-moi ce que je devrais faire à la place, s'il vous plaît.

Au lieu de me donner le même texte, cela me donne:

﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾
Était-ce utile?

La solution

Selon MSDN, c'est mauvais. J'ai donc utilisé cela à la place:

char *test = "test";
CA2W szTest(test);

À partir de là, nous pouvons obtenir un type LPWSTR si nous voulons vraiment:

LPWSTR test = szTest.m_psz;

Il semble également préférable d’utiliser LPWSTR au lieu de _TCHAR * - mais je ne suis pas sûr (je pense que c’est essentiellement la même chose, mais cela pourrait être faux).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top