2

请有人解释为什么这不起作用?

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

请告诉我我应该做什么。

它没有给我相同的文字,而是给了我:

﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾
4

1 回答 1

5

根据 MSDN,这很糟糕。所以我改用了这个:

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

从这里,如果我们真的想要,我们可以得到一个 LPWSTR 类型:

LPWSTR test = szTest.m_psz;

使用 LPWSTR 而不是 _TCHAR * 似乎也更好 - 但我不确定(我认为它们本质上是相同的,但可能是错误的)。

于 2009-10-23T15:21:27.777 回答