【发布时间】:2021-09-08 12:33:22
【问题描述】:
我正在编写一个小型 C++ 程序,它从程序命令行获取输入,然后将字符串传递给另一个函数。
问题是这个函数期望得到一个LPWSTR(wchar_t*)类型变量,而regularchar** argv是一个来自@类型的元素数组987654329@.
有没有办法将 argv 变量作为 LPWSTR* 类型?
谢谢
【问题讨论】:
-
您是在问如何将字符串
char转换为wchar_t的字符串?也许这有帮助:stackoverflow.com/questions/11576846/… -
@Jabberwocky 谢谢。这是另一种方法,但在 argv 数组的情况下,
GetCommandLineW和CommandLineToArgvW似乎更简单。 -
要将 argv 变量作为
LPWSTR*,使用wmain而不是main。 -
您的选择:
1使用 wmain,正如 Raymond 所指出的那样。2使用 Microsoft 的 CRT 实现提供的符号 __argv, __wargv。3在GetCommandLineW 的返回值上调用CommandLineToArgvW。
标签: c++ winapi argv unicode-string