[英]What is the easiest way to convert a char array to a WCHAR array?
在我的代碼中,我收到一個const char array
,如下所示:
const char * myString = someFunction();
現在,我想將其作為wchar array
進行后處理,因為之后使用的函數無法處理狹窄的字符串。
實現這個目標的最簡單方法是什么?
最終是MultiByteToWideChar嗎? (但是,由於它是我輸入的窄字符串,因此它沒有多字節字符=>可能不是最漂亮的解決方案)
除非您在窄字符串中使用擴展字符,否則MultiByteToWideChar將起作用。 如果它是純字母數字字符串,則應該可以正常工作。
您還可以看一下mbstowcs,它雖然不太復雜,但是卻無法提供相同的控制量。
const char * myString = someFunction();
const int len = strlen(myString);
std::vector<wchar_t> myWString (len);
std::copy(myString, myString + len, myWString.begin());
const wchar_t * result = &myWString[0];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.