wstring与string相互转换
生活随笔
收集整理的這篇文章主要介紹了
wstring与string相互转换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include <string>
#include <locale.h> // 需包含locale、string頭文件、使用setlocale函數。
std::wstring StringToWstring(const std::string str)
{// string轉wstringunsigned len = str.size() * 2;// 預留字節數setlocale(LC_CTYPE, ""); //必須調用此函數wchar_t *p = new wchar_t[len];// 申請一段內存存放轉換后的字符串mbstowcs(p,str.c_str(),len);// 轉換std::wstring str1(p);delete[] p;// 釋放申請的內存return str1;
}std::string WstringToString(const std::wstring str)
{// wstring轉stringunsigned len = str.size() * 4;setlocale(LC_CTYPE, "");char *p = new char[len];wcstombs(p,str.c_str(),len);std::string str1(p);delete[] p;return str1;
}int main()
{std::string str = "我是YCY。";std::wstring str1 = StringToWstring(str);// string轉換為wstringstr1 = L"我是不是YCY。";str = WstringToString(str1);// wstring轉換為stringreturn 0;
}
?
總結
以上是生活随笔為你收集整理的wstring与string相互转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c++ 调用cmd命令行函数 可隐藏黑框
- 下一篇: Visual Studio 2017 U