可以使用wcstombs
函数来实现wchar_t转const char。以下是一个示例代码:
#include <iostream>
#include <string>
#include <cwchar>
int main() {
const wchar_t* wstr = L"Hello, World!";
const size_t size = wcslen(wstr) + 1;
char* cstr = new char[size];
size_t convertedChars = 0;
wcstombs_s(&convertedChars, cstr, size, wstr, _TRUNCATE);
std::cout << "Converted string: " << cstr << std::endl;
delete[] cstr;
return 0;
}
在上面的示例中,我们首先定义了一个wchar_t类型的字符串wstr
,然后根据字符串长度分配了足够的内存空间给const char类型的字符串cstr
。接着使用wcstombs_s
函数将wchar_t字符串转换为const char字符串,并输出转换后的结果。最后记得释放内存空间。