使用 mbstowcs_s 将 char* 转换为 wchar_t*
Convert char* to wchar_t* using mbstowcs_s
我试过将 char* 转换为 wchar_t*,但我在使用 mbstowcs 时遇到了一些问题,Visual Studio 想要 mbstowcs_s...
char *port;
size_t size = strlen(port) + 1;
wchar_t* portName = new wchar_t[size];
mbstowcs(portName, port, size);
如何将函数更改为mbstowcs_s?
我不建议禁用安全代码警告,因为使用安全方法的修复非常简单,所以你开始吧:
const char *port="8080";
size_t size = strlen(port) + 1;
wchar_t* portName = new wchar_t[size];
size_t outSize;
mbstowcs_s(&outSize, portName, size, port, size-1);
std::wcout << portName << std::endl;
在 VS2013 上使用 cl /W3 /EHsc
测试。
我试过将 char* 转换为 wchar_t*,但我在使用 mbstowcs 时遇到了一些问题,Visual Studio 想要 mbstowcs_s...
char *port;
size_t size = strlen(port) + 1;
wchar_t* portName = new wchar_t[size];
mbstowcs(portName, port, size);
如何将函数更改为mbstowcs_s?
我不建议禁用安全代码警告,因为使用安全方法的修复非常简单,所以你开始吧:
const char *port="8080";
size_t size = strlen(port) + 1;
wchar_t* portName = new wchar_t[size];
size_t outSize;
mbstowcs_s(&outSize, portName, size, port, size-1);
std::wcout << portName << std::endl;
在 VS2013 上使用 cl /W3 /EHsc
测试。